PHP回调函数不处理对象函数 [英] PHP Callback function not working on object functions

查看:140
本文介绍了PHP回调函数不处理对象函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个数组,并希望通过 array_walk 在数组的每个成员上应用 MySQLi-> real_escape_string 但这不工作:

  array_walk($ array,'$ mysqli-> real_escape_string'); 

出现此错误:


警告:array_walk()期望参数2是一个有效的回调,函数'$ mysqli-> real_escape_string'没有找到或无效的函数名称在C:\wamp\www\ts.php在线69


$ mysqli 是一个有效的对象, code> $ mysqli-> real_escape_string('anything')



strong>是不是可以传递对象的函数作为回调?

我知道我可以创建自己的回调函数函数并实现$ mysqli-> real_escape_string in it 我想知道是不是可以使用回调作为对象的函数?

解决方案

您可以在 php回调页面上阅读,使用:

 #会产生错误
array_walk($ array,array($ msqli,'real_escape_string'));
array_map($ array,array($ msqli,'real_escape_string'));


I have an array and want to apply MySQLi->real_escape_string on every member of the array through array_walk but this is not working:

array_walk($array, '$mysqli->real_escape_string');

It gives this error:

Warning: array_walk() expects parameter 2 to be a valid callback, function '$mysqli->real_escape_string' not found or invalid function name in C:\wamp\www\ts.php on line 69

$mysqli is a valid object and works fine if I do $mysqli->real_escape_string('anything') on anything else.

My Question: Is it not possible to pass object's functions as callback ? Or am I doing something wrong.


IMPORTANT: I know I can create my own callback function and implement $mysqli->real_escape_string in it BUT I want to know is it not possible to use callback as an object's function ?

解决方案

As you can read on php callback page, you shall use:

# produces an error
array_walk($array, array($msqli, 'real_escape_string'));
array_map($array, array($msqli, 'real_escape_string'));

这篇关于PHP回调函数不处理对象函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆