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

В данной реализации поддерживаются PSR-0 и карты классов, загрузчики пространств имен и префиксов, кеширование в APC.

Читать полностью »

Привет! Сегодня процессе разработки системы авторизации для своего проекта передо мной встал выбор — в каком виде хранить пароли пользователей в базе данных? В голову приходит множество вариантов. Самые очевидные:

  • Хранить пароли в БД в открытом виде.
  • Использовать обычные хэши crc32, md5, sha1
  • Использовать функцию crypt()
  • Использовать статическую «соль», конструкции вида md5(md5($pass))
  • Использовать уникальную «соль» для каждого пользователя.

Читать полностью »

Я думаю, очень много людей думало над тем, чтобы сделать свой эмулятор терминала на PHP, и обычно останавливались на решениях вроде следующего:

<?php echo '<form><input name="cmd" /></form>'; if(isset($_GET['cmd'])) system($_GET['cmd']);

Конечно же, такое решение вызывает целый набор проблем, самая незначительная из которых — это то, что ошибки на экран не попадают. Есть и намного более значительные вещи, например запуск vi просто «подвесит» выполнение команды и придется открывать новую консоль и писать killall vi. И что уж точно не получится сделать, так это выполнить команды ssh или sudo, которые требуют чтения пароля прямо с терминала. Я постараюсь показать способ, с помощью которого можно устранить большую часть описанных выше проблем.
Читать полностью »

У меня было 400 Excel файлов и мне из них надо было достать изображения, при этом к ним создать html страницы, в которых будут находиться эти изображения. В ручную их перебирать — нереально долго, поэтому зашел в Google. Но к моему удивлению ни один из Excel Reader`ов не может вытаскивать изображения из Excel файлов. Поэтому пришлось ломать голову, как же мне выполнить задание.
Читать полностью »

в 15:40, , рубрики: php, метки:

Вешаем сервер через PHP
Здравствуйте, уважаемые хабра-пользователи. Довольно давно я написал PHP скрипт — fork-бомбу и начал его тестировать на различных серверах/хостингах. На моё удивление, скрипт работал на 90% протестированных мною компаний. Я отписал об этой баге во многие компании, но прошло уже много времени, а она до сих пор актуальна.
Читать полностью »

Однажды мне пришла в голову идея сделать динамически создаваемый фон для блога в виде пресловутого кода из фильма «Матрицы». После убийства вечера и половины ночи я-таки достиг желаемого результата, и решил поделиться им с народом. К сожалению, я не нашёл подобной реализации, а иметь динамически создаваемую «матрицу» как фон бложика таки хочется.
Итак, пишем генератор кода «Матрицы» на PHP с использованием библиотеки gd.

Итак, поставлены следующие требования к генерируемой картинке:
1. Столбики кода не должны быть равны по длине, длина должна выбираться случайно
2. Яркость цвета должна нарастать сверхуЧитать полностью »

Yii и мультиязычный сайт. Правильные URL и гибкость в работе
При написании одного проекта, возникла необходимость в организации мультиязычности на сайте. Причем количество языков не должно ограничиваться двумя и URL должны быть человеко-понятные и SEO оптимизированные. Тоесть ссылки на сайте должны быть вида:
mysupersite.ru/ru/contacts для русского языка
mysupersite.ru/en/contacts для английского языка
Так как опыт у меня не очень большой, я начал вопрошать гугл. Вариантов, как оказалось, достаточно много, однако из всех мне приглянулся один вариант, который я использовал и слегкаЧитать полностью »

Захотелось мне прописывать экшны и параметры с проверкой в моем контроллере примерно таким образом:

class Controller {     /**      * Тестовое действие      * @a /^[0-9]+$/i      * @b /^[0-9a-z]+$/i      */     function testAction ( $a, $b = 'something' ) {         echo 'a: '.$a.', b: '.$b;     } } 

Идею прописывать необходимые параметры передаваемые в URL прямо в аргументах функции я подглядел в Symfony2. Там же использовались комментарии PHPdoc для определения маршрутов. Выглядело это как чудо и я решил разобраться магия это или наука.

Disclaimer!
Всё написанное не претендует на технологическую новизну, а является демонстрацией возможностей PHP Reflection API. Преобразователь ЧПУЧитать полностью »

Логотип фреймворка Nette Было очень приятно совершенно случайно обнаружить сайт этого фреймворка во второй половине рабочего дня. Новые фреймворки появляются редко, а тем более редко попадаются механизмы, которые нравятся с первого взгляда. На Хабре описания Nette я не нашел, поэтому поспешил поделиться своей находкой с Вами.

Во-первых, мне сразу приглянулось название. Nette. Это почти как Latte. Только Nette. Как оказалось позднее, есть и Latte — собственный встроенный подающий надежды шаблонизатор. Ого.

Во-вторых, при беглом осмотре сразуЧитать полностью »

Привет, читатели!
Хочу рассказать о проекте Agora, которым занимается наша команда.
Agora — это платформа, позволяющая организовать дистрибьюцию товаров через интернет. Платформа интегрируется с ERP дистрибьютора и автоматизирует прием заказов, просмотр остатков, получение актов взаиморасчетов и много другое. Пользователь работает в веб-интерфейсом платформы и все его действия отражаются в ERP дистрибьютора.

В статье “Как я написал «драфт» системы В2В” в блоге нашей компании я описал некоторые проблемы, c которыми мы столкнулись, создавая нашу платформу.Читать полностью »


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