- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
// PHP при делении может неявно конвертировать целые в плавающие, и всех этих int-ограничений для него не существует
echo 12 / 5; // 2.4
// Было бы логично предположить, что другие операторы работают так же, но эта камбала неявно кастует уже плавающее к целому в соседнем операторе
echo 9 % 0.9;
PHP Fatal error: Uncaught DivisionByZeroError: Modulo by zero in Command line code:1
Stack trace:
#0 {main}
thrown in Command line code on line 1
ЗЫ в пыхе есть fmod. смешно что в перле это работает аналогично. наверное с тех времен как содрали это с перла, так никто не догадался это поменять.
Собачка еще..
Ведь скорось так важна серьезным проектам...
Например популярный движок WordPress исправно работает только с MySQL.
поскольку в каждой базе функционал одианков (везде есть "SELECT *" и UPDATE и "left join") смысла уходить от MySQL нет
(из книги "думай как PHP разработчик")
Написал бы "На «AVITO», к примеру, используется «PostgreSQL»", ни у кого бы вопросов не возникло.
Ладно хоть не
На mysql_real_escape_string("AVITO"), к примеру, используется mysql_real_escape_string("PostgreSQL")
$stmt = $dbh->prepare("INSERT INTO NAMES (name) VALUES (:name)");
$stmt->bindParam(':name', "Avito");
$stmt->bindParam(':value', "Postgres")
value забыл, ну ты же понял
Вот видишь, неоспоримое преимущество «mysql_real_escape_string» теперь должно быть тебе очевидным.
>>var_dump
--дебагер? а чот это?
Ну он же пишет, что на продакшоне. Т.е. зафейлившийся или слишком долгий запрос, к примеру. Чем тут дебаггер поможет?
https://www.postgresql.org/docs/current/static/runtime-config-logging.html
А var_dump пишет в stdout, очевидно писать надо не туда, а в лог LogFaces, NewRelic, или хотя бы просто в текстовый файл,
Т.е. даже не в лог пыхи, а прямо в браузер? О_о
З.Ы. Кстати, а мускуль тоже умеет репортить долгие и битые запросы?
Выхлоп var_dump можно перехватить с помощью вызовов ob_start и ob_get_contents. В PHP нормальная практика, когда используются функции, высирающие в stdout, но перед этим включается перехватчик.
это чтобы использовать PHP как шобла-низатор и сохранять потом результат или слать его по email?
И да, чтобы отправлять по e-mail красиво оформленный текст, используя встроенный шаблонизатор, другого пути и нет.
А ещё иногда возникает желание генерировать из PHP всякие файлы, причём не совсем HTML или совсем не HTML...
Открой для себя Python.
То, что пхп выплевывает в stdout всё, что вне кода, покрывается в питоне возможностью принтить мультилайн строки
Для подстановки переменных в строки есть неплохой format.
Остальное в питоне лучше.
А в Ruby и Perl еще есть HERE Document.
php.net/manual/ru/language.types.string.php#language.types .string.syntax.heredoc
php.net/manual/ru/language.types.string.php#language.types .string.syntax.nowdoc
но почему не сохранить файл на диске тогда уже, и не отдавать его через sendfile(2))?
...и засунуть результат в eval, чтобы получить уробороса.
В пыхе как-то не принято разделять на stdout, stderr и логи.
>мускуль
умеет
самоутверждаешься за счет тех, у кого нет такого богатого опыта разработки на PHP.