0

次のスクリプトが 2 つの異なるプラットフォームで異なる動作をする理由を誰か説明できますか?

脚本:

<?php

echo "hello!";

$view_content = ob_get_clean();

echo "'".gettype($view_content)."' >".$view_content."<";

出力 1 (WampServer 2i - php v5.3.0 - Windows 7 x64):

'string' >hello!<

出力 2 (MAMP 1.9 - php v5.3.2 - OSX 10.6.4):

hello!'boolean' ><

MAMP が「ob_get_clean()」関数を正しく実行していないようです。MAMPでphpのv5.2.13も試してみましたが、同じ問題が発生しました。

これらはphpの異なる「バージョン」であることは理解していますが、これでうまくいくはずです。不足している拡張機能/モジュールはありますか?

4

1 に答える 1

2

おそらく 1 つのホストで、自動出力バッファリングがオンになっています。ほとんどの場合必要のないリソースを浪費するため、これはお勧めしません。それに依存している場合は、それを使用および設定できます。IMHO が実際の必要性が生じob_start()たときに呼び出す方が良い方法です。

マニュアルから:

戻り値
出力バッファの内容を返し、出力バッファリングを終了します。出力バッファリングがアクティブでない場合、FALSE が返されます。

于 2010-10-04T17:58:50.303 に答える