【发布时间】:2014-12-10 04:00:22
【问题描述】:
我是 PHP 新手,有一个关于输出缓冲的问题。我在网上找到了这段代码:
ob_start();
system('ipconfig /all');
$contents = ob_get_contents();
ob_end_clean();
$searchFor = "Physical";
$pmac = strpos($contents, $searchFor);
$mac = substr($contents, ($pmac + 36), 17);
return $mac;
一切正常,但我不明白这里输出缓冲区的使用情况。如果我将其更改为:
$contents = system('ipconfig /all');
$searchFor = "Physical";
$pmac = strpos($contents, $searchFor);
$mac = substr($contents, ($pmac + 36), 17);
return $mac;
它似乎无法过滤$contents的内容来找到mac地址。那么输出缓冲对此有什么作用呢?
根据我对输出缓冲的了解,它将所有页面加载到一个变量中,然后一次全部返回,因此页面一次加载并且更快。我真的看不出这会如何改变输出在这种情况下如此剧烈。
【问题讨论】:
标签: php macos output buffering