Php 环境中 Include_path设置 PHP的包含文件路径

2013-05-14   来源:站长日记       编辑:沧海桑田   类别:PHP 教程    转载到:    发表评论

php 文件路径 include_path设置的路径参考点 提高程序兼容性 确保程序正确运行

php 环境中 include_path设置 PHP的包含文件路径

使用include()或require() 这类函数时,程序首先以include_path设置的路径作为参考点去找文件,
如果找不到,则以程序自身所在的路径为参考点去找所要的文件,如果都找不到,则出错.
问题出现了,如果某个项目和环境中同时有相同的目录 如require_once( "adodb/adodb.inc.php" );
程序有可能出错,因为程序搜索的路径和php.ini中设置的include_path路径有关,这时要用set_include_path 或ini_set 来明确指定运行时的搜索路径参考点
// 自 PHP 4.3.0 起可用
set_include_path('/usr/lib/pear');
// 在所有版本的 PHP 中均可用
ini_set('include_path', '/usr/lib/pear');

下面以安装smarty为例:
假设文件放在了/usr/lib/pear/Smarty下。
1、找到你的php.ini配置文件修改php.ini的include_path选项,把smarty的库文件路径加上,比如:
include_path = "/usr/lib/pear/Smarty/libs"
php.ini中一共有两处include_path,一处是Unix下使用的,一处是windows下使用的

; Windows: "path1;path2"
;include_path = ".:/php/includes"
修改为:
; Windows: "path1;path2"
;include_path = "D:wwwSmartylibs"

; Unix: "path1;path2"
;include_path = ".:/php/includes"
修改为:
; Unix: "path1;path2"
;include_path = "/usr/lib/pear/Smarty/libs"

保存即可,可以设置多个,用";"格开。

2、载入Smarty库
如果在php.ini设置了include_path为/usr/lib/pear/Smarty/libs, 可以直接用include("Smarty.class.php");
不设置include_path,可以直接把Smarty.class.php拷到网站目录,可用相对路径或用绝对路径如include("/usr/lib/pear/Smarty/Smarty.class.php");
设置include_path对包函文件Smarty.class.php比较简便,不用写一大串的路径

18

1
18|1 | 鲜花 VS 砸蛋 | 72阅读 0评论 php 文件路径