我有一個數組,並希望通過array_walk
陣列中的每個成員上應用MySQLi->real_escape_string
,但是這是行不通的:PHP回調函數不工作的目標函數
array_walk($array, '$mysqli->real_escape_string');
它給出了這樣的錯誤:
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
是一個有效的對象,如果我在其他任何地方做$mysqli->real_escape_string('anything')
,它都可以正常工作。
我的問題:不可能將對象的函數作爲回調函數傳遞嗎?或者我做錯了什麼。
重要:我知道我可以創建自己的回調函數,並實現$ mysqli->在它但我想知道是不是可以使用回調作爲一個對象的功能real_escape_string?
不,不起作用。它說:'警告:array_walk()期望參數2是一個有效的回調,非靜態方法mysqli :: real_escape_string()不能被靜態調用' – WhatIsOpenID 2010-10-10 15:44:40
這是用引號,當正確使用你寫的,它說:'警告:mysqli :: real_escape_string()期望完全1個參數,2給出' – WhatIsOpenID 2010-10-10 15:46:41
隨着array_map,它似乎工作(http://www.php.net/manual/en/function.array-map.php#63279) – Aif 2010-10-10 15:47:45