- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Коллеги, приветствую! Вопрос следующий. На своём личном веб-сайте использую РНР-Инклуды по типу:
Возник вопрос - в вышеуказанном примере кода я подключаю внешние файлы (шапка, подвал, меню и т.д.) с помощью относительного адреса, то есть адреса именно относительно документа сайта, из которого собственно я и подключаю (инклудю) данный внешний файл. Вопрос: как сделать так, чтобы можно было указывать адрес не относительно конкретного документа сайта, а именно адрес относительно корня сайта? Иными словами, если вдруг я потом этот документ на своём сайте переложу в иное (другое) место, чтобы у меня не слетели инклуды? А автоматически всё равно бы работали от корня сайта... То есть, абсолютно аналогично как с графикой, если мы работаем под сервером и можем легко писать путь наподобие: "/images/bg.jpg", - относительный адрес от корня сайта.
Вот, посмотрел этот вопрос на официальном сайте php.net
В комментариях люди предлагают такой вариант:
Что кто может посоветовать по данному вопросу? Заранее благодарен!
include_once (dirname(__FILE__).'/header.php');
Так?
Можно dirname(__DIR__)
include_once (dirname(__FILE__).'/header.php');
Так?
Нет, относительно корня сайта - это DOCUMENT_ROOT
---------- Добавлено 31.01.2018 в 23:49 ----------
Можно dirname(__DIR__)
Это пять)))
Я понимаю dirname(__FILE__), но dirname(__DIR__) - у меня слов нет.
Как вариант - задать корень в конфигурационном файле.
Лучше сразу продумать иерархию и не мучатся потом.
Пусть будет больше папок, зато всё по своим местам.
Если у Вас есть возможность подключить composer в нем можно организовать автоматическую загрузку файлов, классов и их мапинг. Потом в одном месте подключите autoload.php и будет все работать.
1) $_SERVER['DOCUMENT_ROOT'] webroot папка вашего сайта, которую вы указываете в Nginx или Apache. Не работает в режиме php-cli!
Использовать можно. но на свой страх и риск.
2) Рекомендованный способ использовать __DIR__, к примеру:
__DIR__ дает полный путь от корня файловой системы к текущей директории файла,
к примеру, require находится в файле /var/www/site.ru/index.php, тогда __DIR__ будет
/var/www/site.ru. (без косой черты в конце), а полный путь к файлу somefile.php будет:
/var/www/site.ru/somefolder/somefile.php
И подключайте через require, чтобы у вас был fatal error, если файл не найден. Include слишком мягкий в этом плане.
Это была шутка? AutoSearches? :)
nikonor, на серче это не модно:)
Лучше сразу продумать иерархию и не мучатся потом.
Пусть будет больше папок, зато всё по своим местам.
Мудрые слова, спасибо вам, буду действительно думать над иерархией документов на сайте, это очень важно.
Уважаемые коллеги, спасибо за ваши комментарии и ответы!
Буду дальше работать над своим сайтом... Ещё раз выражаю благодарность вам за отзывы, приятно, когда есть такое большое сообщество. Спасибо.