欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php框架 - 【php】C:WWW/phpcms/这种路径如何include

程序员文章站 2022-06-14 18:51:14
...
C:\WWW\index.php
define('PHPCMS_PATH',dirname(__FILE__).DIRECTORY_SEPARATOR);
include PHPCMS_PATH.'/phpcms/base.php';

这是内容框架PHPCMS的入口页面,
当前文件位于C:\WWW\目录中,这里定义的常量PHPCMS_PATH的值为C:\WWW\;将其与/phpcms/base.php拼接起来结果应当是:C:\WWW\/phpcms/base.php这样一个奇怪的字符串,但是这样引入确实有效的!

这是为什么呢?

回复内容:

C:\WWW\index.php

define('PHPCMS_PATH',dirname(__FILE__).DIRECTORY_SEPARATOR);
include PHPCMS_PATH.'/phpcms/base.php';

这是内容框架PHPCMS的入口页面,
当前文件位于C:\WWW\目录中,这里定义的常量PHPCMS_PATH的值为C:\WWW\;将其与/phpcms/base.php拼接起来结果应当是:C:\WWW\/phpcms/base.php这样一个奇怪的字符串,但是这样引入确实有效的!

这是为什么呢?

你可以使用str_replace方法将PHPCMS_PATH中的\转化为/
PHPCMS_PATH = str_replace('\\', '/', rtrim(PHPCMS_PATH,'\\'));

楼上的没加escape,其实不replace也无妨,win下两个写法都可以

windows路径同时支持正斜杠/和反斜杠\,http://zhi.hu/Wlpm

网络路径、unix路径都只能正斜杠