当前位置: 首页 > 图文教程 > 网络编程 > PHP > set_include_path在win和linux下的区别

PHP
支持php4、php5的mysql数据库操作类
apache rewrite_module模块使用教程
java EJB 加密与解密原理的一个例子
asp和php下textarea提交大量数据发生丢失的解决方法
用php实现批量查询清除一句话后门的代码
Dedecms常用函数解析
PHP5 面向对象程序设计
PHP4与PHP5的时间格式问题
请php正则走开
php str_replace的替换漏洞
php 常用字符串函数总结
php实现mysql数据库备份类
由php if 想到的些问题
附件名前加网站名
深思 PHP 数组遍历的差异(array_diff 的实现)
PHP 实例化类的一点摘记
php入门小知识
php木马攻击防御之道
php不用正则采集速度探究总结
非常不错的MySQL优化的8条经验

PHP 中的 set_include_path在win和linux下的区别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 277 ::
收藏到网摘: n/a

刚刚调式程序,本来在服务器上好好的程序到了win下居然出错。
后来仔细调式才发现是set_include_path的问题。
在win下,当你要include多个路径的话,你要用“;”隔开,但在linux下就使用":"隔开的。。
Zendframe 中的include path 设置2007-06-29 11:55ZF的例子中的include_path感觉不行, 会破坏已有的设置, 所以我感觉, 要这样设置更好:
//Include Path setting
set_include_path(get_include_path() . PATH_SEPARATOR . __APP_ROOT_PATH__ . 'Library' . DIRECTORY_SEPARATOR . 'ZF' . DIRECTORY_SEPARATOR);
require 'Zend/Loader.php';

get_include_path() 是获得系统当前的inc_path路径.
__APP_ROOT_PATH__ 是我自己设置的一个常量,代表当前的目录.
PATH_SEPARATOR 这个可要说一下了, 因为WIN下的path是用 ; (分号) 来分割的, 但LINUX下是用 : (冒号) 来分割,所以要用这个常量来代表 分割符.
这样设置后, 在WIN和LINUX下, 都可以使用.