Напечатать имя файла, включая файл, не входит
Я имею example1.php
а также example2.php
которые включают example3.php
, В example3.php
Я имею:
<link rel="canonical" href="http://website.com/<?php echo basename(__FILE__); ?>">
Я хотел иметь example1.php
/example2.php
в href
зависит от файла, в том числе example3.php
, Проблема в том, что, конечно, __FILE__
выходы example3.php
, Можно ли получить имя файла включаемого файла, а не включенного?
Пожалуйста, не предлагайте использовать уязвимый XSS SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']
,
2 ответа
(Предупреждение: этот трюк может не масштабироваться, но будет работать именно в этом случае.)
Используйте элемент 0 возврата из get_included_files (). Это будет оригинальный файл, который начал цепочку
внутри example3.php:
$gif = get_included_files();
тогда вы можете сделать
<link rel="canonical" href="http://website.com/<?php echo basename($gif[0]); ?>">
Если вы не хотите использовать какие-либо типы $_SERVER[''] для получения имени файла, которое вы можете использовать
pathinfo(__FILE__, PATHINFO_BASENAME)
просто получить желаемое имя файла