給定一個字符串,這樣如何在php中使用unescape字符串?
$str = '\007\t\007\006\006\t\n\026\r\\\045';
格式和輸出轉義字符串,以便 \t - tabulation
等。
我可以通過使用替代解決這個問題,但也許有更好的解決方案?
給定一個字符串,這樣如何在php中使用unescape字符串?
$str = '\007\t\007\006\006\t\n\026\r\\\045';
格式和輸出轉義字符串,以便 \t - tabulation
等。
我可以通過使用替代解決這個問題,但也許有更好的解決方案?
我能想到的最好的是:
eval('$str_unescaped = "' . str_replace('"', '\"', $str) . '";');
str_replace
需要的情況下,該字符串包含任何嵌入雙引號。但是如果它包含嵌入的\"
序列,它仍然會出錯。
它的作品!我的字符串還包含'$',添加了str_replace([''','$'],['\'','\ $'],$ str) – Daniel
stripcslashes
將會忽略這一點,它可以識別類似C \ n \ t等等的八進制和十六進制表示。
我可能是錯的,但我不認爲'$ str'有可以解碼的有效字符。你期望得到的解碼字符串是什麼? –
你預期的確切輸出是什麼?輸出中的 – 2015-10-13 21:05:51
需要是字符串或原始字節數組。 – Daniel