这有点难以解释,所以请随时询问更多细节。
场景:我使用smarty作为模板引擎构建了一个网站。我使用的文本位于我的lang.php文件中。我现在想和以前完全一样(在第一步中),但是阅读"语言数组"来自数据库。
但是,只要我调用我的TextReading函数,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);
似乎没有任何帮助。
任何想法?
更新:所以问题在于调用数据库。如果我不打电话 - 它正在工作(例如只是通过返回"测试"在实际通话之前)。问题是:电话正在运行 - 我可以返回结果,但聪明的不能渲染....
UPDATE2(db call):
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();
...
但正如所说 - 电话正在发挥作用。我会检索一个结果(表格内容),但聪明的停止渲染......