2

我有这个:

$value = filter_var($value, FILTER_CALLBACK, 'mysqli_real_escape_string');

我收到消息:

Warning: filter_var() [function.filter-var]: First argument is expected to be a 
valid callback in C:\mypath\Database.class.php on line 285

但手册明确指出 filter_var 的第一个参数是输入字符串,有什么想法吗?

4

2 回答 2

4

文档不是很清楚。参数必须是一个数组,其中的关键选项是您的可调用对象。此外,还mysqli_real_escape_string需要两个参数,数据库链接和字符串:

$value = filter_var($value, FILTER_CALLBACK,
  array('options' => array('mysqli', 'real_esacpe_string')));
于 2013-08-28T17:54:26.537 回答
3

这是FILTER_CALLBACK您的回调的语法应该在数组中。由于mysqli_real_escape_string需要两个参数,因此即使您遵循正确的语法,您的代码也不会工作。尝试制作自己的功能。

$value = filter_var($value, FILTER_CALLBACK, array('options'=>'YOUR_CALLBACK_HERE'));
于 2013-08-28T17:54:43.947 回答