2013-10-19 78 views
0

是新來的PHP和使用PHP5.2我,我需要一個文件的內容轉換爲二維數組,即我的文件內容將是轉換文件內容轉換成二維數組PHP

"Higher Studies" => "#", 
"Symposiums" => "#", 
"Conferences" => "#" 

而我的預期成果是,

Array ([Higher Studies] => # [Symposiums] => # [Conferences] => #) 

PHP函數我試圖做到這一點,

$values = file_get_contents($url); 
echo $values; 
$array = explode(",", $values); 

$array = array(file_get_contents($url)); 

$array = file('http://localhost/test1.php'); 

最後我得到的這樣回答,

Array ([0] => "Higher Studies" => "#", [1] => "Symposiums" => "#", [2] => "Conferences" => "#") 

這是可能的方式,我們可以從文件中讀取或是否有可能得到一個解決方案,像我預期的是什麼?

回答

2

你應該通過文件讀取它,然後去各行,拆分和存儲在陣列

$array = array(); 
$values = file($url); 
foreach ($values as $idx => $row) 
{ 
    list($k, $v) = explode(' => ', $row); 
    $k = trim($k, '"'); 
    $v = trim($v, '",'); 
    $array[$k] = $v; 
} 
print_r($array); 

,或者你可以這樣做:

$values = file_get_contents($url); 
eval('$array = array('.$values.');'); 
print_r($array); 
+1

是的eval()是不錯的選擇或分裂你以前說過的內容可以很好? – Guts

+1

在一些主機系統上可以禁止eval,所以最好使用文件/分割 - 但是如果你確定文件內容,並且server-eval會更快 –

+0

是的,它的效果很好。在我的託管權利過後的一些日子裏可能會被禁止。那麼更好地與拆分?我如何分割這樣的東西。 – Guts