2013-07-03 71 views
-4

我想循環一個多維數組,並不太確定這是如何完成的。多維數組的foreach

$array = array(array('product1'=>'url1')); 
$array[] = array('product2'=>'url2'); 
$array[] = array('product3'=>'url3'); 

foreach($array as $name=>$url) 
{ 
echo '<a href="'.$url.'">'.$name.'</a>'; 
} 

這返回, 通知:Array對字符串的轉換在test.php的第15行

通知:Array對字符串的轉換在test.php的第15行

注意:第15行test.php中的數組到字符串轉換

我在這裏錯過了什麼嗎?

+3

呀? '$ _SESSION ['products']'不是你正在尋找的數組? – deceze

+0

耶,你真的確定你想得到這個會議嗎?或數組? –

+0

@source:-hey源你得到了答案或仍然在尋找正確的答案 –

回答

2

請不要使用$ array作爲變量名..如果是這樣的話,會好得多。

$products = array(
    array('product1' => 'url1'), 
    array('product2' => 'url2'), 
    array('product3' => 'url3') 
); 

拉動數據:

foreach($products as $ind){ 

    .... 

    foreach($ind as $name){ 
    .... 

    } 
} 
+0

所以我在foreach內做了一個foreach? – Source

+0

@Source,是的,因爲它是一個多維數組。數組中的數組 –

+0

權利有道理,似乎工作。謝謝 – Source

0

currentpage.php

//this is required array which you want to enter in session 
$array = array(
     "product1" => "url1", 
     "product2" => "url2", 
     "product3" => "url3" 
    ); 

session_start();//here we start a session 
$_SESSION['product_url']=$array;//here we pass required array to session 

//By the help of below code we check is session contain array 
//echo "<pre>"; 
//print_r($_SESSION); 

requiedpage.php

session_start();//here we start a session 
//finally display required data to reqired page... 
foreach($_SESSION['product_url'] as $key=>$value) 
{ 
    echo '<a href="'.$value.'">'.$key.'</a><br>'; 
} 

爲多維數組: -

currentpage.php 
    //this is required multidimensional array which you want to enter in session 
     $array= array(
       "[0]"=>array("product1" => 'url1',"product2" => 'url2',"product3" => 'url3') 
      ); 
requieredpage.php 
     foreach($_SESSION['product_url'] as $key=>$value) 
     { 
      foreach($value as $k=>$v){ 
       echo '<a href="'.$v.'">'.$k.'</a><br>'; 
      }  
     } 

輸出我得到: -

product1 
product2 
product3 
+0

@source: - 我的朋友,我嘗試解決你的問題,我希望這會幫助你。我試着從你的代碼中瞭解到。 –