Есть ли способ узнать, доступен ли PHP-скрипт напрямую или он включен.
if(__FILE__ != $_SERVER['SCRIPT_FILENAME']) { // we're in an include }
Используется ответ ceejayoz, но у меня возникают проблемы при использовании символических файлов и путей из-за __FILE__
что __FILE__
разрешается к реальному пути. Поэтому я использовал realpath()
на $_SERVER['SCRIPT_FILENAME']
вместо этого, чтобы разрешить оба пути к реальному пути для решения проблемы.
if(__FILE__ != realpath($_SERVER['SCRIPT_FILENAME'])) { // we're in an include }