我最近一直在玩HHVM。在计算机上运行时遇到了很多麻烦。我知道并非所有PHP函数都可用。作为测试,我正在使用它编写一个新网站,而不是使用我当前的代码。我在尝试使用
时遇到了问题filter_var($var,FILTER_SANITIZE_URL);
从error.log文件中可以看出,此函数未定义。 filter_var函数不能在HHVM中使用,或者我在这里做错了。我喜欢保持干燥,这意味着我必须进行比预期更多的验证。
答案 0 :(得分:6)
filter_var
现在在hhvm中实现。如果您有任何问题,请打开github问题。
答案 1 :(得分:1)
此功能似乎尚未在HHVM上实施,请参阅http://comments.gmane.org/gmane.science.linguistics.wikipedia.technical/70038
一个选项,如果你想依赖这个功能,希望它将进入折叠是为了填充它(部分实现以激发动机)。
if (!function_exists("filter_var")){
// define the constants used by the function
define("FILTER_VALIDATE_EMAIL", "email");
function filter_var(){
$args = func_get_args();
// $args[1] is the filter type (second parameter)
switch ($args[1]){
case FILTER_VALIDATE_EMAIL:
if (preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/", $args[0])?$args[0]:false;
break;
}
}
}