解析错误:语法错误,第538行/home/a8479867/public_html/index.php中的意外T_VARIABLE

时间:2014-03-10 09:56:29

标签: php variables syntax-error

所以我现在将使用php大约3-4周,现在我将介绍这个错误

如果您需要更多信息,请询问:D谢谢!

解析错误:语法错误,意外T_VARIABLE

这里我的PHP代码错误在线'538'

<?php
$p=strtolower$_GET['p'];
if (isset($p) && preg_match("/^[a-z0-9]+$/i",$p){
if(file_exists)("pages/$p.html")){
include "pages/$p.html";
}
else{ 
include "page/404.html"
}
}
else {
include "page/404.html";
}
?>  

3 个答案:

答案 0 :(得分:1)

缺少半冒号:

include "page/404.html"

应该是

include "page/404.html";

If语句也没有很好地形成

if(file_exists)("pages/$p.html")){

应该是

if(file_exists("pages/$p.html")){

您在strtolower()函数调用

周围缺少方括号

$p=strtolower$_GET['p'];

应该是

$p=strtolower($_GET['p']);

答案 1 :(得分:0)

<?php
$p=strtolower($_GET['p']);
if(file_exists("page/".$p.".html")){
include "page/".$p.".html";
}else{ 
include "page/404.html";
}
?> 

答案 2 :(得分:-2)

您在404.html之后缺少半结肠。 还

if(file_exists)("pages/$p.html")){

应该是

if( file_exists("pages/$p.html") ){

我通常建议不要使用那种风格进行编码,因为它很容易出错并引入本地文件包含漏洞。 http://en.wikipedia.org/wiki/File_inclusion_vulnerability#Local_File_Inclusion

如果您希望代码以这种方式运行,最好有一个白色的页面列表并与之匹配。