Php包含显示代码

问题描述 投票:4回答:2

问题:当我在页面顶部包含一个php文件时,它会显示代码而不是运行脚本。

如果我在页面上执行一个简单的echo命令它工作正常,但包含文件却没有。

我用Google搜索了这个问题的地狱,无法找到解决问题的解决方案。我见过的大多数类似问题都是通过使用简写的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';
?>

包括Page:index.php

<?php include '/core/init.php'?>

<!-- Web Page Stuff -->

sanitize.php

function escape ($string){
return htmlentities ($string, ENT_QUOTES, "UTF-8");
}

为什么显示php而不运行?

php include
2个回答
-1
投票

检查您的sanitize.php文件。我认为那里可能存在错误。


0
投票

你错过了

<?php
?>

要包含的文件中的标记。

但哇!!所以我要理解PHP开发过程中包含的任何错误都会将整个库文件分流到Web浏览器中吗?!!?!对于我的全堆栈编程或网络安全概念来说,这一切都很陌生,所有这些都会转到私有错误日志,永远不会将代码暴露给客户端。

没有方法是PHP,或者显然PHP在我的意见中会比我更安全!所以Perl有更多的服务器功能,你不会错过那些不需要甚至定义变量的“松散”代码。它是在任何错误上转储内部结构代码还是仅在实例的解析错误上转储?!

© www.soinside.com 2019 - 2024. All rights reserved.