如何让PHP理解文档根不是字符串?
PHP看到一个未定义的常量,它将其视为字符串,这导致我的网站只显示一个空白页面,我如何让PHP理解文档_ROOT是预定义的/应该预定义的,而不是字符串 我不知道“服务器配置”可能在哪里,但我的网站过去可以正常工作,现在不行了,所以我假设它必须在那里正确定义,无论在哪里,最有可能在cpanel上 我认为Coda2在连接我的mySQL数据库时导致了这个问题 在添加如何让PHP理解文档根不是字符串?,php,constants,Php,Constants,PHP看到一个未定义的常量,它将其视为字符串,这导致我的网站只显示一个空白页面,我如何让PHP理解文档_ROOT是预定义的/应该预定义的,而不是字符串 我不知道“服务器配置”可能在哪里,但我的网站过去可以正常工作,现在不行了,所以我假设它必须在那里正确定义,无论在哪里,最有可能在cpanel上 我认为Coda2在连接我的mySQL数据库时导致了这个问题 在添加错误报告(E_ALL)之前,我似乎无法解决此问题,我甚至不知道这个错误 不要这样做: Notice: Use of undefined c
错误报告(E_ALL)之前,我似乎无法解决此问题代码>,我甚至不知道这个错误 不要这样做:
Notice: Use of undefined constant DOCUMENT_ROOT - assumed 'DOCUMENT_ROOT' in /home/syole/public_html/includes/config.php on line 21
Notice: Use of undefined constant DOCUMENT_ROOT - assumed 'DOCUMENT_ROOT' in /home/syole/public_html/includes/config.php on line 22
改为这样做:
$_SERVER[DOCUMENT_ROOT]
您需要引用字符串(这是),但不需要引用常量(这不是)
如果在插值字符串中使用它,请按如下方式操作:
$_SERVER['DOCUMENT_ROOT']
{}
大括号允许您在双引号字符串中使用单引号/双引号。XDebug表示'DOCUMENT\u ROOT'
是数组()中的字符串。$\u SERVER
$a = "foo {$_SERVER['DOCUMENT_ROOT']} bar";
echo$\u服务器['DOCUMENT\u ROOT'].
;
echo gettype($_服务器)。“
”;
echo gettype($_SERVER['DOCUMENT_ROOT'])。
;
回声';
打印服务器($);
回声';
将其添加到配置文件中
如果你想坚持当前的连续通话。或者你应该按照@cal的建议去做。这不是一个常数。它不是预先定义的。在访问$\u服务器['DOCUMENT\u ROOT']
时,您需要引用它。谢谢您,已修复此错误。我的网站仍然是空白的,这意味着我真正的错误是其他的东西,但这确实有帮助。
echo $_SERVER['DOCUMENT_ROOT'].'<br />';
echo gettype($_SERVER).'<br />';
echo gettype($_SERVER['DOCUMENT_ROOT']).'<br />';
echo '<pre>';
print_r($_SERVER);
echo '<pre>';
define('DOCUMENT_ROOT', $_SERVER['DOCUMENT_ROOT']);