2012-12-06 1 views
5

PHPでエコーを行うたびに、2つの余分なキャリッジリターンが得られます。例:キャリッジリターンなしでPHPにエコーするにはどうすればよいですか?

<?php 
    echo 'abc'; 
?> 

は、abc [cr] [cr]を生成します。スクリプトを別のサーバにコピーすると、[cr] abc [cr] [cr]と表示されます。

私の文字列 'abc'だけをエコーするようにするにはどうすればいいですか?

+0

最後の '?>'を省略することができます。それは役に立ちますか? –

+0

いいえ、それは役に立ちません。 – Mark

答えて

1

私は、サーバー設定がPHPを先行させ、任意の数のキャリッジリターンですべての出力を追跡すると結論づけなければなりません。もちろん、これは私が作業しているウェブホストの設定ファイルのエラーです。それはこのようにはならない。

+1

私はちょうど同じ問題を抱えていて、右に1文字分読み込んだ文字列を短くしなければなりませんでした。これは、キャリッジリターンの文字列を数値に変換することがうまくいかないため、数値変数をロードするときに特に重要です。 – Lumis

4

?>後2つのキャリッジリターンを削除(または?>を除去)

8

echoはPHPで\nを追加しません。

閉じることができます。?>を入力すると、後続の出力がないことが保証されます。

+0

返信いただきありがとうございますが、phpタグの前後に文字はありません。終了タグを削除しても差はありません。 – Mark

+0

@マークこの場合、投稿していないことが起こっています。 – alex

+0

それは可能ですが、私はそれが何であるかを知りたがっています。何か案は? – Mark

0

echoデフォルトでは、キャリッジリターンはありません。

予期しない空白または行は、スクリプトの使用によって主に発生します。プロセスが1行にある場合は、スクリプト側で1行を使用してください。この例については、 `先端など、さまざまなトピックに関する

、さらに便利なもののために、あなたが行うことができますのでによってたとえば、次の点を考慮 conditional statements

を使用した簡単なif/else文について: <?php echo ($foo == "bar") ? "Foo was bar." : "Foo wasn't bar."; ?>

1

PHPスクリプトがネイティブにありますHTMLファイルに配置され、したがって空白に敏感です。つまり、タグを囲む空白が画面に表示されます。あなたがそれが中間段落になることができるようにしたいと思うように!

あなたのタグを取り巻く改行をクリアするか、最後の "?>"タグを残してPHPインタプリタをトリックして、改行を取り除くことができます。

+0

返事をありがとう。私はそれを認識しており、この場合、PHPファイルに空白が残っていません。私はそれがサーバーの問題だと思う。 – Mark

関連する問題