将php应用程序从linux系统移动到运行带wamp的windows 7的系统时,php define语句失败
我正在设置一个开发环境,以便在php站点上工作。 我已将所有源代码复制到运行wamp的Windows7上 我正在尝试更新所有路径,以反映我的dev box上的正确位置。 但我的一些定义语句有问题。例如,我有以下代码:将php应用程序从linux系统移动到运行带wamp的windows 7的系统时,php define语句失败,php,linux,wamp,Php,Linux,Wamp,我正在设置一个开发环境,以便在php站点上工作。 我已将所有源代码复制到运行wamp的Windows7上 我正在尝试更新所有路径,以反映我的dev box上的正确位置。 但我的一些定义语句有问题。例如,我有以下代码: define ('DOCUMENT_ROOT', 'c:\wamp\www\myapplicationname\members\'); define ('DB_LOG', 'c:\wamp\www\myapplicationname\members\log\db'); define
define ('DOCUMENT_ROOT', 'c:\wamp\www\myapplicationname\members\');
define ('DB_LOG', 'c:\wamp\www\myapplicationname\members\log\db');
define ('ERROR_LOG', 'c:\wamp\www\myapplicationname\members\log\errors');
当我尝试运行站点时,会收到以下错误消息:
分析错误:语法错误,中出现意外的T_字符串
第39行C:\wamp\www\myapplicationname\members\includes\init.php
第39行是上面列出的第二条define语句。我可以看出有一个问题,因为第二行的语法高亮显示不起作用。它不识别“define”语句。如果我将第一行更改为:
define ('DOCUMENT_ROOT', 'c:\wamp\www\myapplicationname\members\\');
然后高亮显示再次工作,但当然,路径是错误的
你能告诉我我错过了什么吗
编辑1
我已尝试将其更改为:
'define('DOCUMENT\u ROOT','c:\wamp\www\myapplicationname\members\''
但在代码的后面,当我们像这样附加到文档_ROOT时
require_once DOCUMENT_ROOT.'\inc\exception.class.php';
我得到以下错误:
警告:require\u once(c:\wamp\www\myapplicationname\members'\inc\exception.class.php)[function.require once]:打开流失败:您想转义所有反斜杠,因为它们是php中的特殊字符:
define ('DOCUMENT_ROOT', 'c:\\wamp\\www\\myapplicationname\\members\\');
define ('DB_LOG', 'c:\\wamp\\www\\myapplicationname\\members\\log\\db');
define ('ERROR_LOG', 'c:\\wamp\www\\myapplicationname\\members\\log\\errors');
因此代码高亮显示清楚地显示了问题:
\
是转义字符,它转义了以下字符<代码>“不解释为字符串结尾,而是解释为该字符串中的”
字符。然后字符串跨越到下一行,这是不允许的,PHP会抛出一个错误
如果要在字符串中使用\
,则需要键入\\
-第一个将转义第二个:
define ('DOCUMENT_ROOT', 'c:\\wamp\\www\\myapplicationname\\members\\');
define ('DB_LOG', 'c:\\wamp\\www\\myapplicationname\\members\\log\\db');
define ('ERROR_LOG', 'c:\\wamp\\www\\myapplicationname\\members\\log\\errors');
\'
正在逃出终点'
你能告诉我怎么避开吗?我以为合二为一可以解决问题,但事实并非如此。感谢您使用unix风格的目录分隔符/wamp/www/myapplicationname/members
:它仍然适用于WindowsMark Baker-您想添加它作为答案吗?我接受……哎哟。这是一个很大的工作。只是个问题。有没有什么方法可以像我们在linux中使用的那样将原始路径保留为“/”并让wamp找到答案?@dot我想Mark Baker在对问题的评论中回答了这个问题。