PHPの引用符に関する質問です。PHPの引用符に関する質問です。コンピュータインターネットPHPの引用符に関する質問です。http://www.php.net/manual/ja/language.types.string.php私は、文字列の中に特殊文字のエスケープシーケンスや変数が埋もれる?感じがいやで普段引用符を多用してます。巷のスクリプトを見ると、特殊文字のエスケープシーケンスや変数が含まれていない場合でも比較的二重引用符が多用されているように思います。使い分けの基準となるようなものはあるのでしょうか?また、ないとしても「考え方はこうだよ」といったことがあれば教えてください。08:45:54100pt基本的にシングルクォーテーションを使います。シングルクォーテーションの方がダブルクォーテーションより処理速度が速いということがあります。微妙な差なので、それほど意識する必要はないと思いますが、何千回と回すようなループもあるので、いちおう気にしています。それより大きい理由が、セキュリティ対策です。変数に不正な値が入ってきた場合、それを展開させたことでプログラムの動作が異常になることがあります。クロスサイトスクリプティングがその一例です。配列変数の要素やファイル名、SQL文で文字列結合を行う場合は、異常がないかどうかバリデーションチェックするのが定石です。シングルクォーテーションを文字列結合を明示した方が、何かあったときに原因特定しやすいと思います。意図した展開が展開しないことより、意図しない展開が展開されるほうが危ないですもんね。(展開が多すぎて変な日本語ですが)いつも通り説得力のあるご回答ありがとうございました。したのでこれにて終了します。07:07:50100pt私自身も二重引用符多用派ですね、なんでだろうかと考えてみると。masashi0316さんも質問に書かれている「エスケープシーケンス」が鍵です。文字列中に改行、タブといった制御文字を入れる場合は、二重引用符構文を使うことになります。下記の2つは、ブラウザ画面はどちらも同じ結果になりますよね。&#39;&lt;li&gt;abc&lt;/li&gt;&lt;li&gt;def&lt;/li&gt;&#39;;HTMLソースが整形されている必要はないのですが、デバッグを考えると見やすい方が楽ではないでしょうか?。これはシンプルな例なので、さほど問題になりません。コードが長くなった場合、全てが1行のHTMLは全く見通しがつかないコードになってしまいます。echo(&quot;&lt;li&gt;{$str}&lt;/li&gt;&quot;);いずれも同じ結果になります。引数が増えると、コードの見通しが悪くなるので、私は下の構文を使ってます(それと下の方が速そう(笑))。&lt;td&gt;{$data2}&lt;/td&gt;&lt;/tr&gt;HTML;と書けるので、簡易的なテンプレートとしてつかます。ロジック部分と表示部分を分けると、こちらもすっきりした記述ができます。最後は推測になりますが、歴史を考えると、C言語は引用符は文字(1文字)、二重引用符は文字列を表すという言語仕様です。PHP言語の構文はC言語の流れを汲んでいるので、二重引用符を使うことが多いのではないかと思います。あうっ、K&Rが見つからない。&#39;&lt;li&gt;&#39;.$str.&#39;&lt;/li&gt;&#39;.&quot;&#92;n&quot;;とか書いちゃってます。後半のC言語うんぬんはありえそうですね。ありがとうございました。他の方のご意見もうかがいたいので引き続きよろしくお願いします。08:45:54ここでベストアンサー100pt基本的にシングルクォーテーションを使います。シングルクォーテーションの方がダブルクォーテーションより処理速度が速いということがあります。微妙な差なので、それほど意識する必要はないと思いますが、何千回と回すようなループもあるので、いちおう気にしています。それより大きい理由が、セキュリティ対策です。変数に不正な値が入ってきた場合、それを展開させたことでプログラムの動作が異常になることがあります。クロスサイトスクリプティングがその一例です。配列変数の要素やファイル名、SQL文で文字列結合を行う場合は、異常がないかどうかバリデーションチェックするのが定石です。シングルクォーテーションを文字列結合を明示した方が、何かあったときに原因特定しやすいと思います。意図した展開が展開しないことより、意図しない展開が展開されるほうが危ないですもんね。(展開が多すぎて変な日本語ですが)いつも通り説得力のあるご回答ありがとうございました。したのでこれにて終了します。(0)@${screen_name}${name}${text}Twitterでのつぶやきはまだありません「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。これ以上回答リクエストを送信することはできません。はてなココの「ともだち」を表示します。回答リクエストを送信したユーザーはいませんすでに登録されている方はこちらからログインツイートするウォッチリスト0人が登録していますこの質問に含まれるキーワード特殊文字32PHP7643スクリプト2254引用符15変数1021文字列2070関連質問n_maco2phpに関する質問です。エラーがでて怒られてしまい...2212010/03/1370pte23jpPHPについての質問です。変数$hoge[1]の中にある文字列と置換したい場合、どのように記述すればよ...442007/03/2295ptloyPHPのスクリプトファイル文字コードをSJISで記述して、運用しても文字化けやその他なにか問題はないでしょうか?...52004/06/1980ptnakeyouguisuPHPでMySQLにSJISで格納されたデータを表示できません。...32005/04/2870ptmgakiLinuxでメール受信時にphpスクリプトを実行する際についての質問です。...12006/01/0740ptwori9携帯各社に対応した、会員登録データベースをつくりたいので、PHPとSQLで開発しようと思っています。...12002/04/1750ptninoshin「MySQL」と「PHP」が利用できる共用サーバを捜しています。}}${price}円{{/if}}知りたいことを検索してみようログインして回答する進んだ先のページで「許可する」ボタンを押してはてなによるアクセスを許可すると、認証が終わります。ご利用にあたりましては、はてな利用規約が適用されます。ご確認いただきご同意の上でご利用ください。