Search
Write a publication
Pull to refresh

Comments 15

поговаривают, производительность выше. вместо парсера+лексера+интерпретатора пхп запускаем только парсер yaml/ini/xml. читаемость — дело вкуса
Глянуть бы тесты скорости. Я себе плохо представляю что парсер yaml на php обойдет по скорости парсер php. Кроме того php файлы довольно хорошо кэшируются различными op-код кэшерами, так что ИМХО получить прирост скорости проблематично. Ну и не стоит забывать, что на выходе этого парсера будет тот же массив.
дело в том, что yaml парсится парсером, а в случае пхп — идет новая итерация транслятора.

действительно, надо посмотреть бенчмарки
Я не могу сказать что есть существенная разница. Тут скорей дело вкуса. Думаю что уместно говорить о лучше/хуже только с точки зрения читаемости/скорости внесения изменений для человека. Потому как разница в скорости обработки незначительна. Так вот если говорить об удобочитаемости я бы разпредалил места в следующем порядке yaml, php array, ini xml.
Верно ли я понимаю: без необходимости по прихоти были сделаны недостаточно протестированные изменения, которые привели к проблемам в production? Хотя опыт, видимо, полезный — иногда не знаешь, где стелить соломку :)
«недостаточно протестированные изменения» — подскажите способ как тестировать с гарантией 100% не получить ошибку )?
Тут вопрос немного провакационный ;). Хорошо, а рефакторинг кода — это необходимость? Все работает — а мы начинаем код править, время тратить. Опять же появляется вероятность ошибок после рефакторинга. Зачем его делать )?
Да по сути можно было жить и со старым конфигом, но конфиг уже был достаточно большой. Проект также достаточно большой и развивается, конфиг все равно растет. Крайней необходимости не было. Но я честно не доверяю людям которые панически боятся вносить улучшения, без крайнее необходимости.
>Хотя опыт, видимо, полезный — иногда не знаешь, где стелить соломку :)
И да, когда настураешь на грабли ты ведь этого не ожидаешь)
Самый важный плюс YAML-конфигов, — их можно использовать в скриптах на Perl/Ruby/Python/C…

В отличие от PHP.
И всетаки не стоит так писать:
resources.multidb.dbname.driver_options.1002 = “SET NAMES utf8;”

Лучше так:
resources.multidb.dbname.charset = utf8
да вы правы, тоже нашел эту встроенную опцию когда разбирался. Не помню когда привязалось ко мне 1002 опция и кочевала из проекта в проект.
1002 это PDO::MYSQL_ATTR_INIT_COMMAND
у меня в памяти осталось как раз… если выставлять только Чарсет — это «может» повлиять только на чарсет. а если выставлять НЭЙМС — то выставится и тип подключения в утф8 и чарсет.
До сих пор эти грабли и стоят… года 4 кочуют из проекта конфига в конфиг
Возможно это сейчас уже и работает.
Но года 2-3 назад такая опция была, но никакой утф8 она не включала…
так что…
За последние 3 года очень тесно работал с данным фреймворком, правда, только с мускулем в качестве бд — проблем не возникало. Довольно частая ошибка программистов, то, что они пишут, к примеру, UTF-8 вместо utf8. У каждой бд могут быть свои правила именования кодировок, и это нужно учитывать.
Это не от фреймворка зависело.
Не помню точно уже — увы.
То ли PDO то ли MySQLi не обрабатывали этот параметр, хотя и принимали.
Sign up to leave a comment.

Articles