2011-05-27 129 views
1

在我當前的項目中,我需要將循環內容添加到稍後可以使用的數組中。這是我的代碼。我嘗試了一些方法,但他們不工作。任何人都可以給予幫助,以解決它:如何將循環內容添加到php中的數組中

for($i=0;$i<$max;$i++) { 
    $pid = $_SESSION['cart'][$i]['productid']; 
    $q = $_SESSION['cart'][$i]['qty']; 
    $pname = get_product_name($pid); 

    if($q == 0) { 
     continue; 
    } else { 
     $j = $i+1; 
    } 

我需要的$pid添加到一個數組,我應該能夠使用implode(",", $pid)

感謝

回答

1
$pids=array(); 
for($i=0;$i<$max;$i++){ 
    $pid=$_SESSION['cart'][$i]['productid']; 
    $pids[]=$pid; 
    $q=$_SESSION['cart'][$i]['qty']; 
    $pname=get_product_name($pid); 
    if($q==0){ 
    continue; 
    }else{ 
    $j = $i+1; 
    } 
} 
echo implode(' - ',$pids); 

你應該更清楚一點你的最終結果應該是什麼,我可以更具體一點

+0

非常感謝隊友,你的方法是否正常工作,這就是我真正需要的:)謝謝 – Mujahid 2011-05-27 06:38:18

0

initialiaze $ PID爲數組第一

$pid = array(); 

現在在循環中的值添加到它

$pid[] =$_SESSION['cart'][$i]['productid']; 

注意方括號與PID

你的循環後,可以從$ PID提取值

$someValue = $pid[0] * something'; 

我希望這是什麼ü正在尋找

+0

其實我需要一個輸出喜歡的$ id = 10,12,13 我想你的隊友,但它不是我想要的東西 – Mujahid 2011-05-27 06:34:34

+0

你只需要在發生內爆$ PID變量,我給你一個根埃裏克答案,所以你可以理解的概念 – Ibu 2011-05-27 06:44:43

+0

是的,我得到的答案隊友,感謝很多 – Mujahid 2011-05-27 06:46:10

2

你只是想說這個嗎?

$pids = array(); 
for($i=0;$i<$max;$i++) 
{ 
    $pid=$_SESSION['cart'][$i]['productid']; 
    $q=$_SESSION['cart'][$i]['qty']; 
    if($q==0) 
    { 
     continue; 
    } 
    // optimization... don't do anything if quantity is 0. 
    $pids[] = $pid; 
    $pname=get_product_name($pid); 
} 
echo implode(',', $pids); 
+0

約翰,你的回答也非常完美 – Mujahid 2011-05-27 06:41:26

0
$pids = array(); 

foreach ($_SESSION['cart'] as $cart) 
{ 
$pids[] = $cart['productid']; 
} 

這將讓你一個$的PID陣列。

0

我建議你初始化數組您的PID

$arr_pids = array()

,你想一個PID添加到這個陣列每次只需使用

array_push($arr_pids, $pid)

相關問題