![]() |
Всем привет!
Недавно создавал тему с демонстрацией своей реализации функции для сохранение массивов в файлы php. Решил пойти немножко дальше, и написать небольшую библиотеку/пакет для работы с конфигами. Установка: С помощью composer: composer require mex-vision/phpconfig Инициализация: PHP: Код:
use1. Автозагрузка конфигов с папки, возможность указать суффикс файлов для фильтрации, например .cfg (site.cfg.php). 2. Удобное чтение конфигов, перемещение по ключам массива через точку и возможность указать параметр по умолчанию, который будет возвращен в случае отсутствия требуемого ключа в массиве. Первым ключом является название файла, без учета суффикса и формата (site.cfg.php). Например: PHP: Код:
$configPHP: Код:
// Запись в контейнер с конфигами.PHP: Код:
// Сохраняет конфиги обратно в 'path/to/config/site.cfg.php'.PHP: Код:
// Инициализируем новый провайдер:Ссылка на Packagist: PhpConfig |
Правилом хорошего того является реализация интерфейса ArrayAccess
|
Цитата:
|
Обнови композер файл. Тебе нужно установить минимальную версию пхп. У тебя от 8 как я понял.
Возможно пропустил: что будет, если файла нет, но запросить конфиг? Или файл битьій? Или в нем не пхп код? Я бьі посоветовал еще ставить права на файльі, и папки. [OFF] Имхо: Для себя, на какого-то лютова кастома можно, каждьій начина.щий пхп разраб делает свою цмс) А так, все так же тянется куча проблем из-за хранения конфигов в файлах. Не уверен что при наличии приличного количества конфигов, будет вьігоднее по перфомансу чем с базьі с сериалайзом. [/OFF] |
Цитата:
2) Если файл битый или содержимое не PHP не предусмотрел, внесу правки на этот счет, Exception какой нить брошу. 3) Про права не совсем понял. Типа настройки, можно ли сохранять/изменять конфиги определенного провайдера? Можно сделать, идея хорошая, если хочется просто читать и исключить любого рода изменения. PS: Вы правы по поводу целесообразности использования данного подхода. Делал изначально для себя. Можно использовать при написании инсталятора сайта, когда нужно сохранить/сгенерировать некоторое количество не изменяемых конфигов. Конечно это можно сделать гораздо проще и на заморачиваться над написанием либы. Забыл написать что можно добавить свой файл на лету и сохранить его). PHP: Код:
$config |
Цитата:
Там 775,777) Во многих системах проверяется права на файл) Хотя тут наверно єто будет черезчур) Тьі не ответил на обновление композера- сделай, а то не красиво) |
Цитата:
Код:
{ |
для чего это дело нужно? я тут недавно сел пых изучать просто, знаний ноль, хочется смотреть на примеры простого кода, а тут сложно как то и не понятно куда это может пригодиться))
|
Цитата:
|
Цитата:
Но и комиитьі желательно делать, с описанием( а не просто Add) |
| Время: 01:47 |