#php #file #directory #structure #file-management
#php #файл #каталог #структура #управление файлами
Вопрос:
Как вы храните файлы, которые должны использоваться в классе.
Например, сам файл класса, затем изображения, используемые в этом классе. Или вы не используете изображения в классе, а просто возвращаете вывод на главную страницу, которая, в свою очередь, использует изображения?
Недавно у меня возникли проблемы с принятием решения о том, помещать ли изображения, используемые классом, в глобальный каталог для веб-сайта или создавать свой собственный каталог. Это только что поразило меня, поскольку я понял, что класс, такой как для обработки изображений или для обработки БД, может использоваться с другими проектами, и может быть сложно попытаться найти связанные изображения в глобальной папке при их переносе.
Итак, как вы храните изображения, используемые в ваших классах? Или вы никогда не возвращаете распечатанный вывод из класса?
Используемый в этом случае язык программирования — PHP.
Комментарии:
1. Неясно, что вы подразумеваете под «изображениями, используемыми в ваших классах». Можете ли вы уточнить?
2. @Jordan Изображения, которые выводятся с содержимым, распечатанным самим классом.
3. Для любых, кроме самых маленьких проектов, я настоятельно рекомендую использовать систему шаблонов — Smarty хороша и хорошо поддерживается, но есть много других — и хранить всю разметку отдельно от логики вашего приложения. Это иногда называют разделением интересов и важно учитывать в любом проекте среднего или большого размера.
Ответ №1:
Изображения хранятся в отдельной папке. Во-первых, изображения должны быть доступны клиенту (браузеру), в то время как файлы php (за исключением пары, которые фактически используются в URL-адресах) могут храниться вне папки документа.
Точный путь к изображениям и другим файлам хранится в конфигурации. Это всего лишь небольшой PHP-файл, в котором хранится список настроек. Вы не должны жестко указывать путь к папке с изображениями в своих классах.
Ответ №2:
это структура, которую я использую
/includes
All the clases that you have
/logs
Log files
/public_html
All the pages visible to the user
/css
/javascript
/images
Вы можете иметь config.php файл, в котором у вас есть что-то вроде этого
define("LIB_PATH", '/includes/');
define("IMG_PATH", '/public_html/images/');
и т.д.
Это дает вам преимущество использования абсолютных путей коротким, простым и понятным способом