Smarty/PHP不会显示错误原因';它不再渲染了

Smarty/PHP不会显示错误原因';它不再渲染了,php,smarty,Php,Smarty,这有点难以解释,所以请随意询问更多细节 场景:我使用smarty作为模板引擎构建了一个网站。我使用的所有文本都位于lang.php文件中。我现在想完全像以前一样(在第一步中),但是从数据库中读取“语言数组” 但是,只要我调用文本读取函数,smarty就不再呈现任何内容,即使我没有覆盖现有文本 看起来像这样: $content = new Content("en"); $result = $content->getTexts(); // ONLY CALLING, NOT CHANGING

这有点难以解释,所以请随意询问更多细节

场景:我使用smarty作为模板引擎构建了一个网站。我使用的所有文本都位于lang.php文件中。我现在想完全像以前一样(在第一步中),但是从数据库中读取“语言数组”

但是,只要我调用文本读取函数,smarty就不再呈现任何内容,即使我没有覆盖现有文本

看起来像这样:

$content = new Content("en");
$result = $content->getTexts();
// ONLY CALLING, NOT CHANGING ANYTHING
// var_dump($result) ==> WORKING!
$lang_en = array ( ... );
$lang_de = array ( ... );
getTexts函数工作得很好。我可以转储结果,也可以将表留空—没有任何更改,代码会突然停止工作。实际语言变量($lang_en,$lang_de)或尚未受我的调用影响

我还尝试激活我的日志:

error_reporting(E_ALL);
ini_set("display_errors", 1);
似乎没有什么帮助

有什么想法吗

更新:所以问题是调用datbase。如果我不调用它-它正在工作(例如,在实际调用之前返回“test”)。问题是:调用正在工作-我可以返回结果,但smarty没有渲染

UPDATE2(数据库调用):


但正如所说的,这一呼吁正在发挥作用。我确实检索了一个结果(表内容),但smarty停止渲染…

请您也向我们展示触发未显示错误的代码好吗?我设法找到了问题:我仍然不知道为什么,但smarty多次尝试包含lang.php文件。通过这种方式,它还试图重新声明已定义的类,但失败了。我现在只通过使用require_一次而不是require来解决它,直到我发现为什么它会加载多次
if ($stmt = $mysqli->prepare("SELECT NAME, CONTENT FROM content_text WHERE LANG='DE'")) {

/* bind parameters for markers */
$stmt->bind_param("s", $lang);

/* execute query */
$stmt->execute();

...