PHP应用程序在localhost上运行完美,在任何web服务器上都会完全失败,并出现一些奇怪的错误
我设计了一个非常简单的PHP应用程序。在localhost(XAMPP/windows7)上运行良好,在我上传到的任何web服务器上都会完全失败。故障期间显示的错误,请不要告诉我 无论服务器配置是什么(在许多服务器上进行了测试),运行应用程序的任何尝试都会以以下任一方式结束:PHP应用程序在localhost上运行完美,在任何web服务器上都会完全失败,并出现一些奇怪的错误,php,syntax-error,Php,Syntax Error,我设计了一个非常简单的PHP应用程序。在localhost(XAMPP/windows7)上运行良好,在我上传到的任何web服务器上都会完全失败。故障期间显示的错误,请不要告诉我 无论服务器配置是什么(在许多服务器上进行了测试),运行应用程序的任何尝试都会以以下任一方式结束: PHP错误:第1行的…/template/template.html中出现意外的T_字符串 HTTP错误500:内部服务器错误 空页(假设已禁用错误报告) 文件template/template.html只是一个普通的
- PHP错误:
第1行的…/template/template.html中出现意外的T_字符串
- HTTP错误500:
内部服务器错误
- 空页(假设已禁用错误报告)
template/template.html
只是一个普通的XHTML文件,具有正确的头、体和结构,包含一些简单的PHP语句。我在以下函数中使用require
加载并解析它:
public static function renderPartial($view, $data = array())
{
if(is_file($view))
{
if(is_array($data)) extract($data, EXTR_PREFIX_SAME, 'data');
ob_start();
ob_implicit_flush(false);
require($view);
return ob_get_clean();
}
else die('File <strong>"'.$view.'"</strong> does not exist!');
}
公共静态函数renderPartial($view,$data=array())
{
if(is_文件($view))
{
if(is_数组($data))extract($data,EXTR_前缀_相同,'data');
ob_start();
ob_隐式_刷新(假);
需要($view);
返回ob_get_clean();
}
else die('File“.$view.”“不存在!”);
}
这是我自己的一个非常简单的函数版本,用于Yii(可能还有许多其他框架)渲染视图、子视图或模板。我在我的应用程序中的很多地方都使用它,它就像本地主机上的符咒一样
如果有人想检查,那么是(应该是)实时版本,而压缩存档包含SVN导出的版本,直接从本地主机上的本地工作副本中导出,在这里工作就像做梦一样。(问题已解决--示例已删除)
我已经开发了很多PHP应用程序,无论是纯PHP还是使用Yii框架,这是我第一次遇到这种情况,所以我非常震惊和迷茫。到目前为止,在my localhost(XAMPP)上运行的每个应用程序在任何Web主机上运行时都没有任何问题
非常感谢您的任何想法或帮助。检查您的Apache服务器是否设置为允许PHP使用短标记(
),因为template.html的第一行有短标记(文档中的其他标记都是长的
)。此外,您在同一文件的第27行中,在echo命令的末尾,遗漏了一个分号,应该是
。不知道这是否有帮助,只是以防万一
你好,海瓦塔我被浪费和毁灭了!:]答案很简单。但这引出了另一个问题(对于HTML),我们什么时候应该使用这一行(
),什么时候可以省略它并保持文件有效?我刚刚研究了Yii框架的基本布局文件和其他一些示例,但没有这样的行。但另一方面,我有一些XHTML文件,第一行就是这个文件。奇怪。至于第二个——如果只有一行PHP代码,那么可以省略分号。万分感谢!