乙個簡單的應用。。
例,
1 $str = "array( 'usd'=>'1', 'gbp'=>'0.6494', 'eur'=>'0.7668' ,'jpy'=>'82.8150','rmb'=>'6.6480' )
";
現有$str,內容為陣列形式的資料。
想要得到真正的陣列
$arr = array( 'usd'=>'
1', '
gbp'=>'
0.6494
', '
eur'=>'
0.7668
' ,'
jpy'=>'
82.8150
','rmb
'=>'
6.6480
' );
處理辦法是:
eval("\$arr =
".$str.'
; ');
這樣就得到陣列$arr為字串$str的資料的陣列形式
跟js使用eval類似。
附:php eval函式使用介紹
eval()函式中的eval是evaluate的簡稱,這個函式的作用就是把一段字串當作php語句來執行。
eval("echo'hello world';
");
上邊**等同於下邊的**:
echo"hello world";
在瀏覽器中都輸出:hello world
運用eval()要注意幾點:
1.eval函式的引數的字串末尾一定要有分號,在最後還要另加乙個分號(這個分號是php限制)
2.注意單引號,雙引號和反斜槓的運用。如果引數中帶有變數時,並且變數有賦值操作的話,變數前的$符號一定要有\來轉義。如果沒有賦值操作可以不需要。
$a=100;eval(
"echo$a;
");
因為沒有賦值操作,所以可以不用\來轉義$.等同於以下**:
$a=100;eval(
"echo\$a;
")
php 字串內容為陣列如何進行格式轉換為陣列
例,str array usd 1 gbp 0.6494 eur 0.7668 jpy 82.8150 rmb 6.6480 現有 str,內容為陣列形式的資料。想要得到真正的陣列 arr array usd 1 gbp 0.6494 eur 0.7668 jpy 82.8150 rmb 6.648...
如何進行字串的拷貝?
將str2中的字元賦給str1 只要str2中的字元不為0迴圈就一直進行,當str2遇到0時跳出迴圈體並沒有給str1賦0的值,因此迴圈結束後str1遇到 0 才完成 void mystr1 char str1,char str2 str1 i 0 將str1中的字元賦給str2 只要str2中的字...
php分隔字串為陣列
explode explode 使用乙個字串分割另乙個字串 array explode string separator string string int limit 此函式返回由字串組成的陣列,每個元素都是 string 的乙個子串,它們被字串 separator 作為邊界點分割出來。如果設定了...