Я развиваю Git репозиторий, который содержит только один полезный файл data.json
, Еще один репо, который я разрабатываю параллельно, реализация PHP идеи
И теперь мне нужно загрузить список из data.json
разбери его и потом используй. Первой и наиболее очевидной идеей было написать некоторый класс Loader, который попытается получить доступ к этому файлу двумя способами:
__DIR__ . '/../vendor/ely/anti-tempmail-list/data.json
, Этот случай будет работать, если у нас есть сама библиотека с ее зависимостями.
__DIR__ . '/../../anti-tempmail-list/data.json
, Этот случай будет работать, если библиотека включена как другая зависимость композитора.
Но это немного ужасно, потому что сканирование в файловой системе «грязное». И в случае замены пакета (привет вилки) он перестанет работать.
Другое решение — создать в справочном репозитории некоторые языковые классы Loader, которые будут реализовывать загрузку для файла данных. Но я не уверен, что это тоже хорошее решение …
Поэтому я спрашиваю вас, как мне организовать общение с репозиторием ссылок (data.json) для реализации каким-либо языком программирования?
Постскриптум Справочный репо содержит русский README, но при выпуске он будет переведен в порядке;)
Если вы разрабатываете пакет PHP, вы должны предоставить простой класс PHP, который можно использовать для получения списка из этого файла JSON:
require `vendor/autoload.php`;
$list = \Elyby\Json::getList();
Реализация:
<?php
namespace Elyby;
class Json
{
/**
* @return array
*/
public static function getList()
{
return json_decode(__DIR__.'/data.json', true);
}
}
Автозагрузка также должна быть настроена.
Других решений пока нет …