2009-06-04 63 views
0
$value = '\\40'; 
file_put_contents('o.txt',$value); 
file_put_contents('o2.txt',var_export($value,true)); 


D:\test>php str.php 
D:\test>cat o.txt 
\40 
D:\test>cat o2.txt 
'\\40' 

回答

1

var_export($value, true)返回字符串申報價值'\\40'而只是$value返回該聲明的解釋值,從而\40

0

$ value的值是'\ 40'(即反斜槓,四,零)。當你輸入時,這就是你所得到的。

var_export爲您提供有效的PHP代碼,您需要反斜槓反斜槓,就像您在第一行代碼中所做的那樣。

這有道理嗎?

0

由於var_export的輸出是經過編碼的,因此您可以將結果放入PHP文件中並將其包含或傳遞給eval的調用。 $ value = \ 40,如o.txt所示。但如果你說$ x = eval(file_get_contents('o2.txt')); x也會= 40。

0

$ value ='\ 40';

確實表示'\ 40',第一個「\」轉義第二個。

var_export - 輸出或返回一個可變

var_export的可分析的字符串表示增加了一個「\」,因此它被轉義和可分析:

'\\40' 
相關問題