Рубрика «php» - 261

PHP / [Из песочницы] Создание “API-Centric” Web Application на PHP
Что такое “API-Centric” Web Application?
Это веб приложение которое большая часть функционала реализуется через API. Например: если вы авторизовываетесь, то вы отправляете свои данные через функции API, а API уже возвращает результат success или же ошибку. Другой характеристикой API является то что API не зависит от состояния пользователя.Зачем это нужно ?
Как веб разработчики мы видим, что технологии развиваются каждый день. И все знают, что люди используют не только браузеры на pc, но и android, apple, windows phone и прочие гаджеты для доступа в интернет к своим любимым сайтам.Так причём же тут API ?
Одним из преимуществ создания api-centric приложения этоЧитать полностью »

в 19:18, , рубрики: php, фреймворк, метки: ,

PHP / Бэкдор в Horde
В open source PHP-фреймворке Horde обнаружен бэкдор. Расследование показало, что злоумышленник проник на FTP сервер и изменил три дистрибутива для неавторизованного исполнения PHP-кода. Уязвимость зарегистрирована как CVE-2012-0209.
Затронутые релизы:Horde 3.3.12, скачанный с FTP с 15 ноября по 7 февраля

Horde Groupware 1.2.10, скачанный с FTP с 9 ноября по 7 февраля

Horde Groupware Webmail Edition 1.2.10, скачанный с FTP со 2 ноября по 7 февраля

Horde 4 не затронут, репозитории на CVS и Github тоже. Проверить наличие вредоносного кода можно с помощью поиска сигнатуры в /path/to/horde:
$m[1]($m[2])

Всем пользователям перечисленных версийЧитать полностью »

Веб-разработка / Облегчаем php.ru на 1000%

Он был приобретен у Артемия Лебедева в далёком 2004 году, до этого момента, на нем около 5 лет красовалась вот такая замечательная картинка:
Но вдруг времени заниматься развитием домена не стало, на него был повешен редирект на php.net и все успокоилсь примерно на год.
Через год, собравшись с силами слепили кой чего из того что было и по неопытности, и получилось вот такое чудо:
Чудо работало, люди общались, хакеры хакали, недовольные обижались — в общем всё шло своим чередом.
Очередной позыв произошел в 2009, когда был создан и даже свёрстан новый дизайн портала.
Продумана стратегия развития, кучаЧитать полностью »

PHP / [Из песочницы] Панель инструментов Xdebug для отладки PHP в Opera
Инструкция по настройке тулбара Xdebug — для тех, кто хочет отлаживать код непременно в Опере (а также для тех, кого жизнь заставила).
Для отладки в Опере я нашёл три способа:
Букмарклет-генератор от JetBrains. Нажимаете «Generate», перетаскиваете ссылки на свой тулбар и, в зависимости от своих настроек, получаете либо длиннющие кнопки с текстом вроде «xdebug This page» (что занимает слишком много места), либо совершенно одинаковые безымянные кнопки с иконками странички (невозможно использовать).

Плагин для Оперы, упомянутый в документации Xdebug, который добавляет кнопку для переключения отладки. Судя поЧитать полностью »

Для чего получать доступ ко всем свойствам объекта и при этом не менять его интерфейс? Например, для того, чтобы написать свою сериализацию. Или чтобы передать объект в приемлемом виде используя http. Или для чего-нибудь ещё.
Возьмём для эксперимента простой класс.
class aClass
{
protected $protected_property = 'protected_value';
private $private_property = 'private_value';
public $public_property = 'public_value';
}

$an_object = new aClass;

var_dump($an_object);
// object(aClass)#1 (3) {
// ["protected_property":protected]=>
// string(15) "protected_value"
// ["private_property":"aClass":private]=>
// string(13) "private_value"
// ["public_property"]=>
// string(12) "public_value"
// }

Если использовать отражение, то получить все свойства объекта можно получить, например, вот такимЧитать полностью »

Доброго времени суток. Многие из вас, кто так или иначе соприкасался с веб-разработкой, знают о таком удобном способе обращения к БД как ActiveRecord, чуть меньше человек согласиться, что это действительно очень удобно, примерно столько же понимает, что это далеко не всегда лучшее решение для проекта из соображений производительности. И это действительно так, но можно много чего придумать для избавления от этих проблем: кеширование всего и вся, различные архитектурные ухищрения и т.д.
Именно различными улучшениями AR мы и займемся на протяжении всего цикла этих статей :)
Если уж совсем подробно: мы будем вместе писатьЧитать полностью »

Недавно мне пришлось разбираться с защитой от ботов, используемой на нескольких довольно популярных ресурсах.
На первый взгляд защита показалась обычной установкой куки через javascript, справиться с которой — дело 15-ти минут. В самом деле, после небольшого исследования стало понятно где что делается и какие параметры куда передаются, остается только переписать небольшую функцию с javascript на php и дело в шляпе.
Но все оказалось не так просто. И хотя в итоге защита была сломана, на это потребовалось далеко не 15 минут, и сам принцип защиты оказался для меня новым и довольно интересным.
Итак, обо всем по порядку.
Читать полностью »

Для любой задачи можно придумать тест, который даст необходимый результат. ©
Но в этот раз никаких специальных задач не было, а просто захотелось узнать насколько быстр GHC и вот что получилось.
Дано: массив 16k целых чисел
Тест: 1000 раз quicksort
C (own) 0m2.528s x 1.00
C (qsort) 0m3.282s x 1.30
C++ (std) 0m3.250s x 1.28

Haskell 0m3.867s x 1.53

PHP 1m18.73s x 30
Python 1m38.55s x 38
Perl 2m53.69s x 67

В последних трех тестах не стояла цель получить лучшие результаты, они оставлены для общего маштаба.Исходники: as is, без специальной тест системы, использовался time (man 1 time)Железо: MacBook Pro Mid 2010 / 2.4 GHz Intel Core i5Версии:
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
Читать полностью »

DIY или Сделай Сам / Умный дом с web-интерфейсом на perlxstut
В какой-то момент стало очень лениво отрывать свою пятую точку, чтобы перед сном выключить свет в комнате. И решил это дело автоматизировать. В итоге был изобретён свой велосипед для удалённого управления силовой нагрузкой – программно-аппаратный комплекс, обладающий следующими особенностями:* Возможность управления силовой нагрузкой, питаемой напряжением 220в, из любого места, где есть доступ к сети Интернет, независимо от территориальной удалённости.* Управление силовой нагрузкой через web-сайт* Клиент-серверная архитектура* Доступ к web-сайту системы с мобильных устройств, в том числе через сотовые телефоны с поддержкой WAP* ИспользованиеЧитать полностью »

Skype / [Из песочницы] Улучшаем картинки в чате Skype

Предисловие

17 января мне, как и многим другим, прислали ссылку на статью zhovner про картинки в чате скайпа — http://habrahabr.ru/blogs/skype/136395/, и понеслось!
Идея прикольная, мы тут же начали перекидываться картинками, сгенерированными сервисом img4skype.com, но оказалось что у многих они отображаются растянуто.
Просмотрев фрагмент кода zhovner мы быстро обнаружили что это легко можно исправить, убрав один пробельный символ.
Нужно всего лишь исправить такой код:
$out .= '███';

на вот такой:
$out .= '██';

Поэтому и была быстро сделана локальная версияЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js