我有一个使用 PHP 4 显然不支持的 PHP 5 语法的脚本。
像 MyClass::method()->method(...)
我试图在脚本的开头显示一个错误,告诉服务器没有安装 PHP 5,并且很好地“死”,但我不能因为我得到那个愚蠢的解析错误......
那么如果 < 5 我怎样才能让 PHP 忽略错误呢?
我有一个使用 PHP 4 显然不支持的 PHP 5 语法的脚本。
像 MyClass::method()->method(...)
我试图在脚本的开头显示一个错误,告诉服务器没有安装 PHP 5,并且很好地“死”,但我不能因为我得到那个愚蠢的解析错误......
那么如果 < 5 我怎样才能让 PHP 忽略错误呢?
如果安装了 PHP5,我能想到的最简单的方法是让一个文件包含另一个文件:
//index.php
if (intval(substr(phpversion(), 0, 1)) < 5) {
die ('you must have PHP 5 installed');
} else {
include('main.php');
}
//main.php
MyClass::method()->method(); // or whatever
if (version_compare(PHP_VERSION, '5.0.0', '<')) {
die('PHP is to old.');
}
http://de3.php.net/manual/en/function.version-compare.php
http://www.php.net/manual/en/reserved.constants.php#reserved.constants.core
或者
它不能忽略错误,但是如果 error_reporting(0); 它可以很好地死掉;
if ((int)phpversion() < 5){
error_reporting(0);
}