2014-11-02 41 views
0

好了,我得到了一個while循環,我在其中循環通過不同的用戶:PHP - 獲取項目的數量在陣列

$before = $data['autorenew_before']; 
$refs=$dbh->prepare("SELECT * FROM users WHERE user_by=:userby AND expire <= unix_timestamp(CURRENT_TIMESTAMP + INTERVAL :before day)"); 
    #$refs->bindParam(":userby",$data['username']); 
    $refs->bindParam(":userby",$userdata['username']); 
    $refs->bindParam(":before",$before); 
    $refs->execute(); 

我那麼通過上面的查詢循環:

while($refsData=$refs->fetch()){ 
$ids = "".$refsData['id'].","; 
$explode = explode(",",$ids); 
$outcome = _paying(number_format(getPriceList($data['rented_referrals']),2), 30, $data['username'], $explode); 


} 

這是_paying功能:

function _paying($ceny, $dni, $username, $referrals_array){ 
    //$ceny = 0.20 

    //Count referrals_array doesn't return anything. 
    $koszyk = $ceny * count($referrals_array); 

    return $koszyk; 


} 

上述功能不起作用,因爲count($referrals_array)不工作。

編輯 - 1

print_r($explode);給我:

Array 
(
    [0] => 40231 
    [1] => 
) 
Array 
(
    [0] => 40232 
    [1] => 
) 
Array 
(
    [0] => 40233 
    [1] => 
) 
Array 
(
    [0] => 40234 
    [1] => 
) 
Array 
(
    [0] => 40235 
    [1] => 
) 
Array 
(
    [0] => 55847 
    [1] => 
) 
Array 
(
    [0] => 55848 
    [1] => 
) 
Array 
(
    [0] => 90322 
    [1] => 
) 
Array 
(
    [0] => 90323 
    [1] => 
) 
Array 
(
    [0] => 90324 
    [1] => 
) 
Array 
(
    [0] => 90325 
    [1] => 
) 
Array 
(
    [0] => 90326 
    [1] => 
) 

我在做什麼錯?

回答

0

你檢查了$explode的內容了嗎? 在致電_paying()確認有數據之前,請嘗試print_r($explode);

+0

請看我更新的問題。我粘貼了print_r($ explode)的內容; – oliverbj 2014-11-02 11:14:43