【发布时间】:2014-12-30 03:50:00
【问题描述】:
问题:当我在页面顶部包含一个 php 文件时,它不会运行脚本,而是显示代码。
如果我在页面上执行简单的回显命令,它可以正常工作,但包含文件则不行。
我已经用谷歌搜索了这个问题,但找不到解决问题的解决方案。我见过的大多数类似问题都是通过使用 php 标签而不是简写来解决的。
守则
index.php 位于根文件夹中 init.php 位于根文件夹中名为“core”的文件夹中。
包含文件:init.php
<?php
session_start();
$GLOABALS['config'] = array (
'mysql' => array (
'host' => '127.0.0.1',
'username' => 'root',
'password' => '',
'db' => 'lr'
),
'remember' => array (
'cookie_name' => 'hash',
'cookie_expiry' => 604800
),
'session' => array (
'session_name' => 'user'
)
);
spl_autoload_register (function ($class){
require_once 'classes/' . $class . '.php';
});
require_once 'functions/sanitize.php';
?>
包含页面:index.php
<?php include '/core/init.php'?>
<!-- Web Page Stuff -->
sanatize.php
function escape ($string){
return htmlentities ($string, ENT_QUOTES, "UTF-8");
}
为什么php显示不运行?
【问题讨论】:
-
sanitize.php 中有什么内容?想知道里面是不是有什么东西导致了它。另外,您将其包含在哪个页面中?如果是扩展名为 .html 的页面,您可能需要更改服务器上的设置以解析 .html 页面中的 php。
-
好吧,发布的 sanitize.php 没有
<?php开始标签。您没有提到显示的代码,但这是一个很好的候选者。 -
哇,我完全忽略了它,因为它是一个小文件。 Bishop 是对的,它是清理文件。谢谢主教!将其发布为答案,我会为您标记!
-
index.php 文件包含后缺少分号 (;)。
-
您可以通过删除包含并运行代码来解决此问题,然后您可以找到包含文件创建问题并修复它,请检查正确的 php 标签,希望这有帮助