Шаблоны blade используются для представления данных, нам нужно добавить некоторые проверки и If структуры. Один из примеров это цикл @foreach, когда нужно выполнить какие-либо действия с первым или последним элементом массива. Blade не поддерживает эту функциональность самостоятельно, итак, что же нам делать? Под капотом, Blade-файлы в действительности преобразуются в чистый PHP. Итак, хитрость в том, что мы можем
Маленькая функция для преобразования размера в байтах в человекочитаемый вид: <?php function human_filesize($bytes, $decimals = 2) { $size = array(‘B’,’kB’,’MB’,’GB’,’TB’,’PB’,’EB’,’ZB’,’YB’); $factor = (int) floor((strlen($bytes) — 1) / 3); return sprintf(«%.{$decimals}f», $bytes / pow(1024, $factor)) . @$size[$factor]; } Использование <?php echo human_filesize(filesize(‘example.zip’)); Источник
Ваше приложение может использовать старый, небезопасный алгоритм хеширования для хранения пароля, такой как MD5 (без использования соли) Эта статья объясняет как преобразовать уже имеющиеся пароли, зашифрованные уязвимым алгоритмом в пароли зашифрованные с использованием безопасного метода хеширования (например с использованием Bcrypt ) Что бы решить проблему, мы сделаем конвертацию на лету, когда пользователь успешно входит в
Предположим, что нам нужно выбрать N строк из базы данных и отсортировать их случайным образом. При этом у нас нет возможности (или желания) реализовывать функцию rand() в Doctrine. В MySQL эта задача решается очень просто: SELECT column FROM table ORDER BY RAND() LIMIT 10 Но если вы используете DQL (Doctrine Query Language) это будет не
В коллекциях Laravel 5.1 нет функции like для коллекций, но можно написать подобное поведение при помощи filter. $searchBy = ‘gr’; $data = collect(array(‘name’ => ‘gregg’, ‘name’ => ‘john’, ‘name’=> ‘alice’)); $data = $data->filter(function ($item) use ($searchBy) { return (bool) preg_match(‘#^’.preg_quote($searchBy).’.*$#us’, $item[‘name’]); }); SQL like preg_match % .* _ .
Проверка PHP-кода на ошибки, cli. find . -type f -name ‘*.php’ -exec php -l ‘{}’ ‘;’ log=`find . -type f -name ‘*.php’ -exec php -l ‘{}’ ‘;’ | grep -v ‘No syntax ‘`; if [ x»${log}» != x ]; then exit 1; else echo «No syntax errors detected in PHP scripts»; fi
По-умолчанию в IIS запрещены методы, которые используется в Restful API, например DELETE, PUT и другие. Для того, что бы разрешить эти методы нужно: В диспетчере IIS открыть Сопоставления обработчиков Найти обработчик PHP, зайти в его настройки Ограничение запроса… Команды Прописать необходимые методы, например: GET,POST,PUT,DELETE, а также можно разрешить все.
По-умолчанию, в IIS отключен обработчик для файлов шрифтов (например, .woff .woff2) и графики в .svg. Что бы включить нужно сделать следующее: В Диспетчере служб IIS перейти в «Типы MIME» Добавить Значения: Расширение MIME .woff application/x-woff .wof2 application/x-woff2 .svg image/svg+xml
Requirements = PHP 5.3 function buildTree($flat, $pidKey, $idKey = null) { $grouped = array(); foreach ($flat as $sub){ $grouped[$sub[$pidKey]][] = $sub; } $fnBuilder = function($siblings) use (&$fnBuilder, $grouped, $idKey) { foreach ($siblings as $k => $sibling) { $id = $sibling[$idKey]; if(isset($grouped[$id])) { $sibling[‘children’] = $fnBuilder($grouped[$id]); } $siblings[$k] = $sibling; } return $siblings; }; $tree =
Пользователь Fabien Potencier (fabpot) разработал инструмент, который автоматически форматирует и перестраивает ваш код следуя стандартам PSR. Этот пост и инструкция помогут вам установить этот инструмент и добавить его в PHPStorm, добавить сочетание клавиш что бы выполнять проверку текущего открытого файла.