Получение кода ответа сервера на примере небольшого php скрипта, который получает список адресов из xml файла (sitemap.xml).
PHP:
Довольно распространенная php задача получить расширение файла и проверить, что этот файл, например, картинка.
Просьба учесть, что доверять такому способу при загрузке файлов на сервер нельзя, т.к. легко можно переименовать php скрипт в ".jpg", но если нужно перебрать все файлы в папке и найти среди них картинки - такой вариант вполне подойдет.
Php скрипт для ротации бэкапов
Пример того, как можно сделать ротацию резервных копий на bash (sh) и php.
При сохранении данных в БД получил ошибку Invalid datetime format: 1366 Incorrect string value, первоначально подул, что проблема с ORM библиотекой, но замена на RedBeanPHP ничего не дала, ошибка появлялась при попытке сохранить в базу HTML страницу.
Учитывая, что объемы текста были довольно большими, то понять, что именно вызывает ошибку было проблематично.
Решение оказалось довольно простым, данные, до сохранения в БД нужно было прогнать через php функцию utf8_encode.
Примеры использования ORM RedBeanPHP
В новом проекте поработал с ORM RedBeanPHP. Впечатления остались самые положительные, поэтому оставлю тут несколько заметок, по использованию. По сути, это будут примеры использования RedBeanPHP.
У Битрикса существует богатый каталог расширений, но поставить их можно только если активна лицензия.
Также стоит учитывать, если лицензии нет и CMS Bitrix не обновляется, то расширения могут не заработать на старых версиях php.
Именно так и получилось, при установке расширения "Долями".
При отправке писем через PHPMailer, вылетает ошибка:
PHPMailer: SMTP ERROR: Failed to connect to server: Permission denied (13)
Простой способ конвертации даты в формате Sql (или строки) в "русскую дату" на php
$sDateString = '2021-11-01'; $sTime = strtotime($sDateString); $d = date('d', $sTime); $m = date('m', $sTime); $y = date('Y', $sTime); echo $d.'.'.$m.'.'.$y;
Пример работы с phantomjs на php
Во время парсинга сайта обычного чтения файла или CURL'а может не хватить. Например, если нужно дождаться выполнения JavaScript кода на старице.
Для таких целей нам поможет phantomjs - это "безголовый браузер" (Headless Browser), по сути, это консольный браузер без экрана.
Простоя задача, есть текст произвольной делены и нужно его обрезать, на php, с этим проблем нет. Можно воспользоваться substr (mb_substr), но есть нюанс :-)
Если в обрезаемом тексте есть html тэги, то можно их "разорвать". Пример:
<div>начало текста, место обреза, еще текст</div>
Это может привести к массе проблем.