【问题标题】:load page with only error value with PHP使用 PHP 加载只有错误值的页面
【发布时间】:2016-06-24 11:40:28
【问题描述】:

我正在用 php 编写自己的 CMS,但无法找到如何在错误出现时仅加载错误的方法。我有这种支票

(isset($opt['theme']) && $opt['theme'] != "" ? "" : exit("Please Map Load Theme"));

但这是来自模块的简短代码,该模块在 head 和 head CMS 加载的所有 javascript && css 库之后加载。所以现在由于 Javascript 我看不到这个退出错误代码,一些元素隐藏了它。当我调用它时,php 是否有一些功能会删除所有加载的数据,并且只会显示我将在错误时写入的输出。

【问题讨论】:

  • 我觉得你想清理整个屏幕,只显示一条消息,对吗?
  • 这段代码到底做了什么?
  • @M4R1KU 是的
  • @PhiterFernandes 它检查是否 isset 这种数组值,如果没有,它将继续代码,它将停止并告诉您错误
  • 你也不能把出口放在三元中。你不能在三元中执行函数,除非它们只返回东西。

标签: javascript php html css exit


【解决方案1】:

我无法为您的 CMS 提供准确的答案,但我可以告诉您如何使用输出缓冲。

如果您有一个包含网站内容的模板(没有菜单、导航栏和页脚)。例如,如果您在任何地方收到错误,您可以将模板更改为错误模板。

我在我的一个项目中这样使用它。

ob_start();
if (file_exists($this->template)) {
    $this->_content = file_get_contents($this->template);
} else {
    $this->_content = file_get_contents('../path/to/error/template.php');
}
include_once('../path/to/layout.php');
$this->body = ob_get_clean();

我知道这不是您问题的完美答案,但我希望我能给您一个想法,您可以如何解决这个问题。

我的布局文件包含一个“evals”代码的部分。所以布局文件的内容被执行并在包含页眉和页脚的布局内。

还可以查看一些 MVC 框架。他们可以给你一个很好的方法。 我将自己定位于 CakePHP。

【讨论】:

    猜你喜欢
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-27
    • 1970-01-01
    • 2015-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多