您如何将文件路径的以下和替换部分作为变量?
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/directory2/directory3/file.php';
我想用变量 $dir2 替换 directory2。简单地插入变量如下不起作用?
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/$dir2/directory3/file.php';
谢谢。
您如何将文件路径的以下和替换部分作为变量?
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/directory2/directory3/file.php';
我想用变量 $dir2 替换 directory2。简单地插入变量如下不起作用?
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/$dir2/directory3/file.php';
谢谢。
基本 php 语法:带引号的字符串'
不插入变量。请改用带"
引号的字符串:
require_once $_SERVER['DOCUMENT_ROOT'] . "/directory1/$dir2/directory3/file.php";
^--- ^---
或使用字符串连接:
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/' . $dir2 . '/directory3/file.php';
在 PHP 中有两种方法可以做到这一点。
require_once $_SERVER['DOCUMENT_ROOT'] . '/directory1/'.$dir2.'/directory3/file.php';
或者
require_once $_SERVER['DOCUMENT_ROOT'] . "/directory1/$dir2/directory3/file.php";
区别在于使用 ' 或 " 表示字符串。使用 ' 时,您需要像示例中那样连接变量,就像您已经使用 $_SERVER['DOCUMENT_ROOT'] 所做的那样。使用 " 时,您可以将变量放在字符串中 " 为是”,甚至做这样的事情(对数组有用):
require_once $_SERVER['DOCUMENT_ROOT'] . "/directory1/{$_SERVER["HTTP_HOST"]}/directory3/file.php";
使用"
将解析变量。
"/directory1/$dir2/directory3/file.php"
而不是依赖$_SERVER['DOCUMENT_ROOT']
,您应该执行类似diranme(__FILE__)
or __DIR__
(>= 5.3) 的操作来定义根目录。
单引号防止变量替换。使用双引号:
require_once $_SERVER['DOCUMENT_ROOT'] . "/directory1/$dir2/directory3/file.php";