PHPとstdin/stdout:冒頭の余分な改行はどこから来ますか?

私はいくつかのファイルを処理するためにPHPを使用しています(regexpの実行、置き換えなど)。処理した後は、処理したすべてのファイルの始めに常に改行があります。私はこれらのいくつかの行に絞った:

#!/usr/bin/php

<?php
$test = file('php://stdin');

file_put_contents('php://stdout',$test);

?>

これを保存してテキストをパイプすると、出力の始めに改行があることに気付くでしょう。それはどこから来て、どうすればそれを取り除くことができますか?ありがとう!

PS:PHPバージョン:PHP 5.3.6、Suhosin-Patch(cli)(ビルド:Sep 8 2011 19:34:00)

0

2 答え

Erm, it's between the shebang line and the <?php. I think you can figure out easily enough how to remove it.

8
追加された
#!/usr/bin/php
    <---blank line here
<?php

Remember, there's no such thing as a PHP script. There's only files which happen to have PHP code blocks embedded in them. Anything outside of a <?php ?> tag set is considered "output" by the PHP engine. That means the blank line between the shebang and the <?php opening tag will be output.

0
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com