2015-09-15 103 views
0

我使用的是foreach語句添加對象的財產array但我覺得代碼可以通過使用高階函數進行更具可讀性。我想也許array_map可能工作,但我還沒有找到如何。PHP - 高階函數對象屬性映射到一個數組

$deviceCollection = []; 
foreach ($android as $token) { 
    $deviceCollection[] = $this->pushNotification->Device($token->token, ['badge' => 1]); 
} 

這可以用array_map或我看錯了功能嗎?

回答

3

可以完成,例如,通過

$afn = Closure::bind(
    function($token) { 
     $this->pushNotification->Device($token->token, ['badge' => 1]); 
    }, 
    $this 
); 

$deviceCollection = array_map($afn, $android); 

如果$afn只在一個地方時,我會說可讀性在旁觀者的眼睛....