我寫了一個測試網(wǎng)頁post_test.php,向a.php送post消息,消息內(nèi)容是簡單XML元素。a.php正確接收并處理,同時a.php要直接輸出字符串內(nèi)容,并讓post_test.php可以用file_get_contents函數(shù)接收到。返回的內(nèi)容也是格式相同的簡易XML文檔,其中有一處結(jié)點內(nèi)容是時間戳,用time()函數(shù)生成??善婀值木褪牵徽撌莂.php自己輸出,還是post_test.php用file_get_contents接收,用echo輸出的內(nèi)容僅僅是時間戳,而用var_dump輸出的是XML內(nèi)容的字符串。為何var_dump和echo、print等函數(shù)輸出的內(nèi)容完全是兩碼事?很明顯,var_dump得到的內(nèi)容是我期望的,如何才能讓post_test.php接收到的內(nèi)容是XML字符串呢?我注意到,跟time()沒關(guān)系。XML文檔中的大部分節(jié)點的內(nèi)容都適用<![CDATA[……]]>引用的,唯有時間戳那個結(jié)點是直接寫數(shù)字的。我發(fā)現(xiàn),那個沒有用CDATA引用的部分,會直接出現(xiàn)在echo的輸出中,以及file_get_contents()的返回值中。為何會出現(xiàn)這種狀況?該如何修正?
2 回答

慕后森
TA貢獻(xiàn)1802條經(jīng)驗 獲得超5個贊
var_dump — 打印變量的相關(guān)信息
$b = 3.1;
var_dump($b);
輸出字符串:
float(3.1)
如果是echo與print
echo 3.1;
輸出字符串:
3.1
如果要更好的輸出xml,建議看看PHP手冊中的XMLWriter章節(jié)。另外,不什么不嘗試json這種類型呢?xml傳遞相對比較過時了。

慕尼黑5688855
TA貢獻(xiàn)1848條經(jīng)驗 獲得超2個贊
var_dump 判斷一個變量的類型與長度如:
<?
$a = 1;
$b = 't';
echo var_dump($ta,$tb); // 結(jié)果為 int(123) string(3) "abc"
?>
echo僅輸出變量或字串
<?
$a = "abc";
echo $a; //輸出 abc
//or
echo "abc"; //輸出 abc
?>
print_r輸出數(shù)組
<?
$a = array('a','b','c');
print_r($a); // 輸出 Array ( [0] => a [1] => b [2] => c )
?>
- 2 回答
- 0 關(guān)注
- 533 瀏覽
添加回答
舉報
0/150
提交
取消