2011-03-22 99 views
7

我想爆炸一個字符串看起來像是一個空字符。PHP爆炸空字符

這就是我使用的是:$exp = explode('\x00', $bin);

雖然這不起作用。但是,如果我做$exp = explode($bin[5], $bin);(其中的字符5是我想爆炸的這個字符),它工作正常。

如果我做var_dump($bin[5])這表明我見方的塊,在其一個問號(),並在查看源代碼,我得到:�

誰能告訴我什麼是最好的辦法是爆炸在這字符?或者即使它是空字符(根據ascii表,它是,除非我讀了全部錯誤)。

感謝

回答

13

嘗試雙引號:

$exp = explode("\x00", $bin); 

另外,佔領相當於ASCII字符代碼和使用CHR傳遞。

$char = ord($bin[5]); 

// Replace this with the actual number returned from ord 
$exp = explode(chr($char), $bin); 

後一個例子消除了如果你還沒有確定它可能實際上不是空字符的可能性。

+0

這是正確的。 「如果字符串用雙引號(」)括起來,PHP會解釋更多特殊字符的轉義序列:....「 – Unicron 2011-03-22 09:48:17

+1

感謝雙引號的工作,現在我該如何給你代表? -.- – 2011-03-22 09:48:18

+2

@你可以用複選標記 – Unicron 2011-03-22 09:48:40