为了脚本程序的兼容性,很多时候脚本的名称都不是固定的。所以我们需要通过动态获取当前脚本的路径、文件名来完成某些功能。
PHP 中,我们可以使用常量 __FILE__ 来获取当前被执行脚本的完整路径。
注意:当包含此变量的脚本被其他脚本include或者require的时候, __FILE__ 将仍然返回此脚本的地址,而不是调用此脚本的位置。
如下面的代码,我们将此文件保存在 D:\WWWRoot\fileTest.php:
view plaincopy to clipboardprint?
01.<?php
02.$fileURI = __FILE__;
03.echo "The URI of this file is " . $fileURI;
04.?>
<?php
$fileURI = __FILE__;
echo "The URI of this file is " . $fileURI;
?>
当我们执行的时候,程序会输出 "D:\WWWRoot\fileTest.php" ;
当我们用另一个文件引用它:
view plaincopy to clipboardprint?
01.<?php
02.include_once "./fileTest.php";
03.?>
<?php
include_once "./fileTest.php";
?>
我们同样会得到输出结果: "D:\WWWRoot\fileTest.php" ;
我们获取了文件的路径后,就可以使用 basename 来获取文件名了:
view plaincopy to clipboardprint?
01.<?php
02.$fileURI = __FILE__;
03.$fullName = basename($fileURI);
04.$mainName = basename($fileURI, ".php");
05.
06.echo "My Location is " . $fileURI . "<br />" .
07. "My full name is " . $fullName . "<br />" .
08. "My main name is " . $mainName . "<br />";
09.?>
<?php
$fileURI = __FILE__;
$fullName = basename($fileURI);
$mainName = basename($fileURI, ".php");
echo "My Location is " . $fileURI . "<br />" .
"My full name is " . $fullName . "<br />" .
"My main name is " . $mainName . "<br />";
?>
使用 basename($uriString) 我们可以得到一个包含扩展名的文件名;
如果不需要扩展名,也可以使用 basename($uriString, $extString) 过滤扩展名,仅仅返回文件名。
转载地址::http://hi.baidu.com/zhuyachao/blog/item/6659d571e12f390a8601b0ad.html