Php 输出缓冲转储长度为2560个字符的空字符串

Php 输出缓冲转储长度为2560个字符的空字符串,php,output-buffering,Php,Output Buffering,我正在使用以下命令转储变量: ob_start(null, 4096); define('SITERNDNUM', rand(10000000,99999999)); // other declarations and vars Session::init(); // $output_ob = ob_get_contents(); var_dump($output_ob); 我得到的所有结果是: string(2560) " " 我尝试过使用flush函数和其他输出函数,但没有成功。字符串

我正在使用以下命令转储变量:

ob_start(null, 4096);
define('SITERNDNUM', rand(10000000,99999999));
// other declarations and vars
Session::init();
// 
$output_ob = ob_get_contents();
var_dump($output_ob);
我得到的所有结果是:

string(2560) " "

我尝试过使用flush函数和其他输出函数,但没有成功。

字符串不是空的。它有2560字节长。var_dump()无法显示所有字符,并取消某些字符的输出

请谅解:

$str = "\x00\x01\x02\n";
var_dump($str);  //string(4) " " 
十六进制表示法有助于使所有字节可见

function strhex($s){
  return $s != '' ? '\\x'.implode('\\x',str_split(bin2hex($s),2)) : '';
}


$str = "\x00\x01\x02\n";

echo strhex($str);  //  \x00\x01\x02\x0a
如果使用此函数而不是var_dump,则所有字符都将可见