Nếu tôi sử dụng array_walk
bên trong một hàm lớp để gọi một chức năng của cùng một lớpLàm cách nào để sử dụng phương thức lớp làm chức năng gọi lại?
class user
{
public function getUserFields($userIdsArray,$fieldsArray)
{
if((isNonEmptyArray($userIdsArray)) && (isNonEmptyArray($fieldsArray)))
{
array_walk($fieldsArray, 'test_print');
}
}
private function test_print($item, $key)
{
//replace the $item if it matches something
}
}
Nó mang lại cho tôi những lỗi sau -
Cảnh báo:
array_walk()
[function.array-đi bộ]: Không thể để gọitest_print()
- chức năng không tồn tại trong ...
Vì vậy, làm thế nào để xác định $this->test_print()
wh ile sử dụng array_walk()
?
Bất kỳ lý do nào bạn đã tạo hàm 'isNonEmptyArray' thay vì chỉ sử dụng'! empt y (...) '? –
có, nó trả về true chỉ khi param là một mảng có ít nhất một giá trị không trống –