2012-02-03 81 views
-1

對不起,因爲我知道這可能是一個noob問題,但我有這麼多工作要做,我無法完成我的PHP學習過程。如何匹配同一數組內其他鍵值的鍵值?

比方說,我有文件擴展名和變量在PHP這樣的一個數組:

$fileExt = ".php"; 

$mainNav = array(

    "page01" => array (

     "id" => "value", 
     "name" => "value", 
     "title" => "value", 
     "url" => need same "id" value + $fileExt 

    ), 

    "page02" => array (

     "id" => "value", 
     "name" => "value", 
     "title" => "value", 
     "url" => need same "id" value + $fileExt 

    ), 
); 

但是我喜歡這樣,而不是硬編碼值「URL」,它的價值相匹配鍵「名稱」+我已經在變量中的文件擴展名,以防萬一我需要稍後進行更改。

+0

好吧,不知何故,你必須得到值來設置名稱。只需使用相同的方法來設置URL擴展名 – Henesnarfel 2012-02-03 20:26:37

+0

我知道如何硬編碼它...我只是不知道如何匹配相同數組內的值。 – 2012-02-03 20:49:29

回答

0
$url = $page01['url'].$fileExt; 
1

這應該做的工作:

$fileExt = ".php"; 

$var['page01'] => array (
    "id" => "inicio", 
    "name" => "Inicio", 
    "title" => "Incio - Cerartec", 
); 

$var['page01']['url'] = $var['page01']['name'] . $fileExt; 
+0

這可能會起作用,但我的真實情況有點複雜。 我有一個多維數組是誠實的。 – 2012-02-03 20:40:17

+0

你可以通過它,併爲每個關鍵? – entropid 2012-02-03 21:54:57

1

有幾個方法可以做到這一點,下面可能是最容易沒有看到你所使用的代碼。

$fileExt = ".php"; 

$mainNav = array(

    "page01" => array (
     "id" => "idvalue", 
     "name" => "value", 
     "title" => "value" 
    ), 

    "page02" => array (
     "id" => "idvalue2", 
     "name" => "value", 
     "title" => "value" 
    ) 
); 

foreach($mainNav as $key => $value) 
{ 
    $mainNav[$key]["url"] = $value["id"] . $fileExt; 
} 

我也在想這個東西存儲在數據庫中?如果是這樣,只需爲網址添加一個字段,並在插入網頁時繼續並同時執行網址。

相關問題