質問するログイン新規登録
PHP

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

Q&A

解決済

2回答

1743閲覧

htmlspecialcharsやnl2brを同時に指定することはできますか?

yukina00235

総合スコア63

PHP

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

0グッド

1クリップ

投稿2020/04/27 08:10

0

1

PHPの勉強をしていて、ふと思ったのですがPOSTとかで受け取る際にhtmlspecialchars や nl2br といった指定を行うかと思います。

その他にもstripslashes($_POST["name"])とか、addslashes($_POST["name"])であったりと。
その際に、これらの指定を1つに定義することは可能なのでしょうか?

同時に指定されている記述というものを見たことが無いような気がしまして、どういった指定はどのように行うのが正解なのでしょうか?

php

1htmlspecialchars($_POST["name"]); 2nl2br($_POST["name"]); 3stripslashes($_POST["name"]); 4addslashes($_POST["name"]); 5

一度に指定は無理ですか、1つ1つ定義するのでしょうか??

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

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

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

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

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

guest

回答2

0

ふと思ったのですがPOSTとかで受け取る際にhtmlspecialchars や nl2br といった指定を行うかと思います。

前提、使い方が間違ってます。
受け取る時にはそのまま受け取り、出力の際に要件に応じて使い分けます。

投稿2020/04/27 08:46

m.ts10806

総合スコア80888

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

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

m.ts10806

2020/04/27 08:53

可能かどうかだけなら「可能」だけど「どういう出力や処理をしたいかによる」というのが先ですね。要件
yukina00235

2020/04/28 00:23

失礼いたしました、送るときの間違いでした。 ご指摘有難うございます。
m.ts10806

2020/04/28 00:25

間違った使い方を平気でしている書籍やオンライン学習サービスもあるようですのでご注意ください。
guest

0

ベストアンサー

これらの指定を1つに定義することは可能なのでしょうか?

まず、stripslashesaddslashesは(過去との互換性を引きずっているWordPressなどの環境を除けば)現代PHPにおいて出番はありません。必要と思ったときは、ほぼ確実により適切な処理があります。

そして、nl2brhtmlspecialcharsは組み合わせることが可能ですが、nl2brをあとから適用しないと、<br>までエスケープされてしまいます。

<?= nl2br(htmlspecialchars($value)) ?>

投稿2020/04/27 08:20

maisumakun

総合スコア146704

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

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

yukina00235

2020/04/28 00:22

有難うございます、食い合わせた場合の具体的な書き方が見れてよかったです。 stripslashesやaddslashesは現在は使う事がほぼないという事なので、こちらはあまり意識しないようにしたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問