首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XAMPP上的PHP无法正确解释包含相对路径的变量

问XAMPP上的PHP无法正确解释包含相对路径的变量
EN

Stack Overflow用户
提问于 2016-04-30 13:49:17
回答 1查看 73关注 0票数 0

我正在尝试做一些工作在一个小的电子商务网站,我现在负责。该站点运行在Apache服务器上(不确定是什么版本,HTTP响应只会告诉我它是"Apache"),运行在Linux上,PHP为5.3.24。该网站在服务器上运行良好,由Network Solutions托管,实际上只使用PHP动态生成页面,没有数据库交互,就像目前一样,我们使用PayPal购物车来处理最终的事务。

我决定在我自己的XAMPP Apache/MySQL/PHP安装上进行一些开发--(可能不是最好的选择),具体地说:

用于Windows 1.7.3的XAMPP

Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1

所有这些都在运行(等待...)Windows XP SP3。

当我将站点移植到我的服务器上时,索引页面加载得很好--都是普通的HTML,但是当我试图进入站点的下一层时,一些资源没有加载。

下面是一个使用includes动态构建的.php文件的示例:

代码语言:javascript
复制
<?php

$pageID = "category1" ;
$mainPane_filename = "category1.inc";
$rootDir = "../";
$categoryID=$cID = "item_pv";
$sb_filename = "php/itemlist.php";

include($rootDir . "php/template.php"); 

?>

在本例中,变量'$rootDir‘的赋值工作正常,并且我的XAMPP安装没有语法问题:

‘'include($rootDir . "php/template.php");’

但是,template.php文件中的链接有一个问题。

虽然该文件有一个.php扩展名,并包含一些孤立的php脚本,但其中大部分是HTML语言。似乎PHP解释器不喜欢这样的东西:

代码语言:javascript
复制
<link rel="stylesheet" type="text/css" href="<?=$rootDir?>ns_stl.css">

有许多这样的链接指向大多数图形文件。这些链接不存在于脚本标记中,除了语法之外,它们都是直接的HTML:

代码语言:javascript
复制
<?=$rootDir?>

这些代码在实时服务器上解释得很好,但我的XAMPP安装给我的错误是:

Sun Apr 24 20:50:12 2016 client 192.168.29.249给定路径的格式错误或包含无效字符:无法将GET /niche/menu/%3C?=$rootDir?%3Eimages/navi6.jpg HTTP/1.1映射到文件,引用:http://192.168.29.249/niche/menu/category1.php

我注意到错误消息将<>字符呈现为URL编码,并且我尝试更改一些链接以包含:'%3C?=$rootDir?%3E',但没有包含joy。

有谁知道可能发生了什么事吗?

对于那些经历了这一切的人,我要向他们致以由衷的感谢!

EN

回答 1

Stack Overflow用户

发布于 2016-04-30 13:59:28

我将从删除php短标记开始,更改

代码语言:javascript
复制
    <?=$rootDir?>

至

代码语言:javascript
复制
    <?php echo $rootDir; ?>

这里有一篇文章,介绍了与短标签相关的一些问题。https://softwareengineering.stackexchange.com/questions/151661/is-it-bad-practice-to-use-tag-in-php

基本上,你在你的代码中看到的任何地方

代码语言:javascript
复制
 <?= should be changed to  <?php 

这肯定会对XAMPP有所帮助。在实时服务器上更改它们也不会有什么坏处。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36951285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档