2015-02-07 54 views
0

我想在數組中使用變量字符串,如我保存的數組值,任何文件或文檔或變量,我想在數組中使用它,但我沒有這樣做。在數組中使用變量字符串php

$var = "'title' => 'This is my title','name' => 'My name is John'"; 

$ar = array($var); 

echo $ar['title'].'<br>'.$ar['name']; 

錯誤我得到

Notice: Undefined index: title 
Notice: Undefined index: name 
+0

看一看這個所以問題,也許它有助於你想要存檔:http://stackoverflow.com/questions/11267434/php-how-to-turn-a-string-that-c​​ontains-an-array-expression-in-an - 實際數組 – Bjoern 2015-02-07 09:25:41

回答

0

試試這個:

$ar = array('title' => 'This is my title','name' => 'My name is John'); 
+0

我知道我可以這樣做,但我想使用變量並假定數組值被保存在變量中,像這樣不改變 '$ var =「'title'=>'這是我的標題','name'=>'我的名字是John'';' – John 2015-02-07 09:28:55

+0

'$ var'正被存儲作爲第0個位置上的單個維度值。所以如果你回顯'$ ar [0]'會給你$ var值。你可以使用'explode'來獲取數組。 'explode(',',$ var);' – 2015-02-07 09:38:45

1

您可以使用的strtok()功能將字符串分割爲一個分隔符的數組。

試試下面的代碼:

<?php 
    $var = "'title' => 'This is my title','name' => 'My name is John'"; 
    $ar = strtok($var,","); 
    while ($ar!==false) 
    { 
    echo "$ar<br>"; 
    $ar=strtok(","); 
    } 
?> 

在這裏,我已經使用了 「」 作爲分隔符。

輸出:

'標題'=> '這是我的標題'

'名'=>'我的名字是約翰

+0

是的,但我想在變量中賦予標題和名稱的值,所以我可以在任何地方使用它,比如 '$ mytitle = $ var ['title']; echo $ mytitle; 輸出將是 '這是我的標題'' – John 2015-02-07 09:38:08

+0

請認爲該數組不是具有鍵值對的映射。你問的問題不能用Array實現。 – 2015-02-07 09:51:20