質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

4回答

1437閲覧

改行文字(\n)の使用用途について

aae_11

総合スコア178

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

1グッド

0クリップ

投稿2019/08/07 04:58

phpにおいて、改行文字(\n)の使い方がいまいち分かりません。
こちらの改行文字は、echo テスト"\n"テスト とするとソース上では改行されていますが、ブラウザでは改行されていません。
たまに、「"\n"」をphpのコード上で見かけるのですが、用途がいまいち分かりません。文字を出力するならば、
「echo テスト"<br>"テスト」とすれば良いですし、ソースを改行させる必要性が分かりません。
どなたか、上記の疑問点につきまして、教えて頂けましたら幸いです。

newyee👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

出力されるHTMLソース(などの情報)の可読性を良くするためと思います。

補足:
正しくは「改行コード」(環境依存あり)なので。
改行コードについて
\nと直に書くのではなくPHP_EOLと書いて環境依存を吸収するように書くのがより安全です。

投稿2019/08/07 04:59

編集2019/08/07 05:45
m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/08/07 05:15 編集

回答に移行。
aae_11

2019/08/07 05:34

出力されるHTMLソースの可読性を良くするためとのことなのですが、いまいちそれが誰のメリットになるかが分かりません。ブラウザからソースの表示にて、確認する人に対してということでしょうか?
m.ts10806

2019/08/07 05:38

あくまで開発者側の都合です。 PHPのコードも別に外から見られるわけではないのでどう組んであってもちゃんと要件通りに動けば良いのです。jsのminifyみたいに一切の改行もなしに変数や関数も1文字2文字で書いても良いのです。 「コードに改行を入れる」のはあくまで開発者側がコードを読む際に読みやすくするためです。 コードが読みやすくなるとその分、デバッグや問題の切り分けがしやすくなります。 インデントも同様です。
m.ts10806

2019/08/07 05:46

補足しました。 HTMLソース(などの情報) いずれにしても見た目を整えるため以外の目的はほとんどないと言って良いでしょう(少なくとも私は他の目的で使ったことがありません)
aae_11

2019/08/07 05:50

基本的には開発者向けであり、見た目を整える用途であるということですね。 ご説明ありがとうございます。
guest

0

改行文字(\n)の使用用途について

php は利用方法として html を吐き出すシステムとして使用されるケースが多いですが、それ以外の用途にも使用できます。
cli で使用したり、api としてレスポンスを返したり、api へ post したり、telnet/ssh/smtp 等で会話することもあります。

そういった場面ではプレーンな text 出力が必要なケースも多く\nが使用されます。

投稿2019/08/07 05:41

編集2019/08/07 05:42
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aae_11

2019/08/07 05:52

ご回答ありがとうございます。 >そういった場面ではプレーンな text 出力が必要なケースも多く\nが使用されます。 「こちらプレーンなテキスト出力」の意味なのですが、ソースの表示をした際の「<p>テスト</p>」こちらのpタグも含んだ文字列といった解釈で正しいでしょうか?
退会済みユーザー

退会済みユーザー

2019/08/07 06:55

ちがいます。雑に説明すると、Content-Type: text/html な環境ではなく、 Content-Type: text/plain な環境で意味を持つってことです。
guest

0

preタグで囲んだりtextarea内では改行されます。
改行マークには改行しているという意味がありますし、
マークアップとしての改行とは異なります。
そもそもbrタグは「改行」ではありません。

投稿2019/08/07 05:03

yambejp

総合スコア114839

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aae_11

2019/08/07 05:11

<br>タグは改行ではないとのことなのですが、<br>タグを挿入すると改行が行われます。 改行ではないとはどういった意味なのでしょうか...?
yambejp

2019/08/07 05:33

厳密に解釈するとbrタグはキャリッジリターン(行末から行頭に戻る=復帰)するタグなので 本来の意味では「改行=new line」はふくまれません 便宜上改行のように見えるから「改行でよくね?」とみんなが拡大解釈してるだけです
aae_11

2019/08/07 05:35

そういうことっだったのですね。ありがとうございます。
ikadzuchi

2019/08/07 23:33

ちょっと意味が分かりません。復帰だから改行でないというのはCRとLFをそれぞれに解釈する環境でのみ成り立つ話で、HTML含めほとんどの環境で行を扱う方法は「復帰しつつ改行」の1つしか用意されていません。 そもそも名前からしてline break=改行ですし。
yambejp

2019/08/08 00:12

line feedやnew lineではなくcarriage returnだと言うことです 理解できないならご自身でよくしらべてください
Zuishin

2019/08/08 00:30

改行せず行頭に戻るタグだった時代は無いと思いますが。名前は同じですが、\r と混同されていませんか?
ikadzuchi

2019/08/08 01:06

いえ、私が理解できないのは復帰と改行の違いではなくあなたの論理ですけど。
Zuishin

2019/08/08 01:25

元々の意味はテレタイプに使われたキャリッジリターンとラインフィードだそうですが、テレタイプには印字ヘッドを初期位置に戻すキャリッジリターン(元の場所へ運ぶ)と、一行分紙送りをするラインフィード(一行送る)の機能がありました。 例えば五行分の改行(ニューライン)するには、キャリッジリターンを一回と、ラインフィードを五回するような仕組みでした。 ですから、改行、キャリッジリターン、ラインフィードはそれぞれ用語として区別されていました。 現在では、キャリッジリターンとラインフィードは 0D と 0A というコードの名前でしかないという認識です。 それらはどちらも改行の意味で使われることがあるので、改行はラインフィードしか認めないという主張には疑問を覚えますし、そのどちらとも無関係で、最初から改行として設計されている br タグを改行ではないと言う主張にも首を傾げます。 ラインフィードが改行と同義なのは、ラインフィード一つをもって改行とみなす UNIX テキストの話ではないでしょうか。ご存知の通り、Mac の場合は昔はキャリッジリターンが改行コードでした。
guest

0

ソースで見る場合は、改行コードで改行され、 <br> では改行されません。
これは開発者向けですね。

あと、ブラウザではなく、バッチ処理なんかはCUIなので、こちらは改行コードでなければ改行して表示されません。
まぁ、総じて開発者向けですかね…

投稿2019/08/07 05:43

takepan1973

総合スコア821

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aae_11

2019/08/07 06:21

ご回答ありがとうございます。 CUIでは「改行コードでなければ改行して表示されない」といったこともあるのですね。 少し気になったのですが、メモ帳なんかでは改行する際は直接改行コードを打ち込むことはしませんが、改行した際は行末に、改行コードが挿入されていると聞いたことがあります。 phpなどの開発で、改行コードを生成し、それをメモ帳などで開いた場合、改行されているといったことを実現できたりはするのでしょうか...?
maisumakun

2019/08/07 07:48

> メモ帳なんかでは改行する際は直接改行コードを打ち込むことはしませんが いえ、Enterキーで打ち込んでいるものが「改行コード」です。
m.ts10806

2019/08/07 09:25

>改行コードを生成し、 謎が深まった。 私が回答に書いた「環境依存」部分をもうちょっと深堀してほしいものです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問