PHP在null字符上爆炸

Hos*_*diq 7 php hex explode

我试图在看起来像一个空字符的东西上爆炸一个字符串.

这就是我正在使用的:$exp = explode('\x00', $bin);.

虽然这不起作用.但是,如果我这样做$exp = explode($bin[5], $bin);($bin这个角色我想要爆炸的角色5 )它可以正常工作.

如果我这样做var_dump($bin[5])它向我显示带有问号的方块( ),并在视图源中我得到:�

谁能告诉我爆炸这个角色最好的方法是什么?或者即使它是空字符(根据ascii表格,除非我读错了).

谢谢

Mic*_*nan 13

试试双引号:

$exp = explode("\x00", $bin);
Run Code Online (Sandbox Code Playgroud)

或者,捕获等效的ASCII字符代码并使用chr传递它.

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

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

后一个示例消除了如果您尚未确定它可能实际上不是空字符的可能性.

  • @Hosh,您可以使用复选标记标记他的答案 (2认同)