Я разрабатываю свое первое приложение на Codeigniter 2.0.2, и у меня возникла небольшая проблема, о которой я не могу найти никакой информации в Интернете.
Приложение вращается вокруг ресурсов, хранящихся локально на сервере (а именно, изображений и аудиофайлов), которые должны быть доступны пользователю. Расположение этих ресурсов хранится в БД в виде абсолютных путей. В результате мне часто приходится переводить серверные пути в URL на основе base_url.
Я уже написал простую и достаточно надежную функцию, чтобы справиться с ней для меня, но со всеми внешне значимыми помощниками в CI (url, path) я не могу избавиться от ощущения, что я просто заново изобрел колесо.
По крайней мере, я бы подумал, что будет какая-то функция CI (скажем, "basify"), которая преобразует любой путь сервера в путь, относящийся к base_url, например:
$server_path = '/server/path/to/app/resources/image.jpg';
basify( $server_path ); // returns 'resources/image.jpg' or './resources/image.jpg'
где приложение CI находится в / server / path / to / app. Тогда это простой вызов base_url () для создания URL.
Существует ли что-нибудь подобное?
Edit: И да, я знаю, что простое preg_replace будет обрабатывать большинство случаев для меня (по крайней мере, те, где ресурс находится в базовом пути), но я чувствую, что это должна быть работа CI, а не моя! Половина причины, по которой я его использую, заключается в том, что я не хочу думать об управлении путями.