|
|
|
| Как правильно определятьтекущую директорию?:
dirname($_SERVER['PHP_SELF'])
или
dirname(__FILE__)
В каких случаях будут накладки, если я перепутаю одно с другим? | |
|
|
|
|
|
|
|
для: Eugene77
(13.02.2008 в 09:51)
| | ну вообще да, PHP_SELF и __FILE__ разные вещи..
попробуй такой пример
1.php
<?php
echo dirname($_SERVER['PHP_SELF']);
include 'inc/2.php';
?>
inc/2.php
<?php
echo dirname(__FILE__);
?>
т.е. __FILE__ указывает реально на тот файл, где выполняется текущая строка кода
а PHP_SELF - на скрипт, который ты видишь в адресной строке браузера | |
|
|
|
|
|
|
|
для: mechanic
(13.02.2008 в 10:06)
| | А если dirname($_SERVER['PHP_SELF']) это директория, в которой находится файл, то какой функцией узнать имя файла? | |
|
|
|
|
|
|
|
для: Freddie_X
(13.02.2008 в 10:13)
| |
<?
// имя файла
echo basename(__FILE__);
?>
|
| |
|
|
|
|
|
|
|
для: Freddie_X
(13.02.2008 в 10:13)
| | имя исполняющегося скрипта в твоем случае - аргумент для dirname ))
т.е. $_SERVER['PHP_SELF'] | |
|
|
|
|
|
|
|
для: mechanic
(13.02.2008 в 12:09)
| | mihdan, не подходит, потому что функция возвращает имя именно того файла, в котором она написана. А у меня она будет написана в одном файле, который будет инклудится во все остальные. Вот мне и надо узнать имена этих файлов.
Сделал так, но думаю, есть способ проще... или я не прав?
<?php $phpself = $_SERVER['PHP_SELF'];
$phpself = explode("/",$phpself);
$pagename = $phpself[count($phpself)-1]; ?>
|
mechanic, $_SERVER['PHP_SELF'] возвращает имена/папок/имя_файла, а мне нужно именно имя_файла. | |
|
|
|
|
|
|
|
для: Freddie_X
(13.02.2008 в 13:05)
| |
<?
// имя файла
echo basename($_SERVER['PHP_SELF']);
?>
|
| |
|
|
|
|
|
|
|
для: mechanic
(13.02.2008 в 10:06)
| | >
>т.е. __FILE__ указывает реально на тот файл, где выполняется текущая строка кода
>а PHP_SELF - на скрипт, который ты видишь в адресной строке браузера
Ясно.
Но хочу всё же уточнить.
Если ничего не инклудить, то оба определения дадут всегда в точности одинаковый результат или возможны всё-таки в некоторых случаях расхождения? | |
|
|
|