• ベストアンサー

変数を{}で囲むときに$を中に入れるか入れないか

PHPで変数を書くとき、 echo $test; と書くのが普通ですが、前後に文字を書く場合は、 echo ああ{$test}いい; と書いていました。 が、最近になって、{}内に$を入れないのが普通ということを知りました。 そこで質問なんですが、$を{}内に入れた書き方は本当に間違いなのでしょうか? また、{}内に$を入れない場合は、$_GET['']を囲む場合はどのように囲めばいいのでしょうか? よろしくお願いします。

  • kfan
  • お礼率35% (26/74)
  • PHP
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>echo ああ{$test}いい; echo "ああ{$test}いい"; ですよね?echoやprintするときにはダブルクォーテーションでくくりましょう >{}内に$を入れないのが普通と 何を参考にされましたか? {}に入れるのがPHPでは間違いない方法です。 以下ご参照ください http://jp2.php.net/manual/ja/language.types.string.php#language.types.string.parsing.complex

関連するQ&A

  • 変数の中に変数を

    お世話になっております。 質問タイトルにありますように、変数の記述のあるテキストを変数の中にいれたいのですが、元の変数が有効にならないため質問させていただきます。(グーグルで検索しているのですが、どれも解決に至らないので・・) データベースに変数($text)を含んだテキストを保存した後、以下のような構成のファイルをブラウザでみると、変数($text)は展開されずに、ブラウザ上に$textと表示されてしまいます。 <?php $text="テスト"; //DB問合わせ //上記、変数textを含んだテキストをDBから呼び出す echo $data;//この変数の中に、上記変数($text)が入っている。 ?> 以上のような場合、変数($text)を展開させるには、どのようにしたら宜しいのでしょうか? お忙しい中恐縮ですがアドバイスのほど宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • 変数の中に変数を使うには?

    いつもお世話になっております。 CSVファイルを読み込んで、 list($id,$title,$name,$note,$date) = explode(",", $value); といった形で変数に割り当て、 print <<<_EOT_ <DIV class="title">$title</DIV> <DIV class="note">$note</DIV> _EOT_; のようにレイアウトしています。 $noteの中に変数が混ざったテキストを使いたいのですが、なかなか思うように置き換わりません。 <?php echo $hensu; ?>などと試してみたりもしたのですが… ファイルから読み込んだデータの中に、変数を使う事は、可能なのでしょうか? どうぞご教示をお願いいたします。

    • ベストアンサー
    • PHP
  • 変数によるクラスの呼び出しができない

    変数によるクラスの呼び出しができません。 <?php class test { public function test_method () { $return = "test"; return $return; } } $test1 = 'test'; $test2 = 'test_method'; new $test1; echo $test1::$test2 (); ?> 問題が起こっているのは new $test1; echo $test1::$test2 (); の部分の$test1をtestに変更する事で正しく動作します。 実際に使う時には$_GETの入力値から呼び出すクラスの変更を行おうと考えています。 セキュリティー対策として登録済みクラスの対応表を使っての呼び出しを行っているので対応表を if ($_GET["~"] == ~) { new ~; ~::test(); } else... のような形式に出来ないわけではないですが対応表自身が変動する為この方法では対応表の書き換えが大変困難なものになってしまいます。 変数を使った呼び出しの方法は無いもなのでしょうか。 環境はWeb ServerがApache 2.2.0,PHPが5.1.4の状態でmod_suPHP 0.6.1を使っています。

    • ベストアンサー
    • PHP
  • phpでは、$をつけると変数になりますよね? 次の

    phpでは、$をつけると変数になりますよね? 次の場合はこれは3つとも変数ということですか? $area = $length * $length; 

    • ベストアンサー
    • PHP
  • 変数文字の中に変数を入れたい

    初心者です。宜しく御願いします。 java sprictで文字列の中に変数名を入れたいのですが、 可能でしょうか? 例えば、PHPとかですと、変数の前に「$」があるので、 $hensu1="5"; ${hensu.$hensu}="dekirukana";←このような表現がしたいのです。 echo $hensu5; のような(上のプログラムが動くかどうかは別として)表現が可能かどうかが知りたいのです。 for文などで、一度に多くの変数に値を入れたいのですが、 どうあがいてもできません。わかりません。 どなたか救いの手をお願いします。

  • echoの直後に変数(文字列ではなく)を記述?

    echoの正しい記述方法についてご質問します。 echoの直後に変数(文字列ではなく)を記述する場合の質問です。この場合、echoを使用して「変数です」と出力(「」は、出力しません。)するには、以下の例の内、どの記述が正しい(又は最も良い)のでしょうか? 例1: <?php $var = "変数"; echo $var,'です'; ?> 例2: <?php $var = "変数"; echo ',$var,です'; ?> 例3: <?php $var = "変数"; echo '$var,です'; ?> また、上記よりもっと良い記述方法があれば、お教え下さい。 この質問の内容に関して詳細な情報が記載されているサイト等をご存知でしたら、お教え下さい。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • GETメソッドで「#」を含む値を送信したいのですが。

    PHP初心者です。宜しくお願いします。 例えば、「test.php?test=123#ABC"」とした場合、 <?php echo $_GET['test']; ?> で確認すると、単に「123」と表示されるだけで、「#」以下の文字列が切り捨てられて、「ABC」が得られません。 「echo urlencode($_GET['test']);」等も試し、私なりに調べてみたのですが、どうしても分かりませんでした。どなたかご回答いただけますでしょうか? 宜しくお願いします。

    • ベストアンサー
    • PHP
  • ヒアドキュメントでの変数値の表示について

    以下にようにヒアドキュメントを利用して変数を表示させたいのですが、時々、正常に変数の値が表示されない場合があります。 前後に全角スペースなどを追加してみても表示されませんが、単独で変数値をechoすると表示されます。 どういった要因で表示されないのか、ご存知でしたら教えて頂きたいのですが。。 宜しくお願いします。 例)-------------------------------     print <<<EOD      <TABLE>      <TR>      <TD>$TEST</TD>      </TR>      </TABLE>     EOD; -----------------------------------

    • ベストアンサー
    • PHP
  • phpの変数について

    phpの変数として<?= ~ ?>は設定できないのでしょうか? 例) $test = "<?= $smple ?>" <html> <body> <p>$test</p> </body> </html> 上の記述だと文字列として扱われてしまうので、以下のように表示されてしまいます。 <html> <body> <p><?= $smple ?></p> </body> </html> 変数を使用して、通常のphp構文のように使用することはできないのでしょうか? 若しくは、同じことを実現するためには別のやり方や関数などを用いなければならないのでしょうか? 基本的なことを質問している気がしますが、どなたかご教授願います。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • globalと$GLOBALSの違いは?

    globalと$GLOBALSの違いは、連想配列かそうでないかしかないのでしょうか。 大量に使う場合、どちらを使っても動作には差はでないでしょうか。 <?php $s = "グローバルスコープ"; //グローバルスコープ function scope_test0(){ echo $s; // 何も表示されない(ローカルスコープ) } scope_test0(); /* globalを使う */ $a = "スコープの違い"; function scope_test1(){ global $a; //ここでglobalを宣言、スコープが違う変数を参照可能に echo $a; //スコープの違い }; scope_test1(); /* $GLOBALSを使う */ $b = 3; $c = 4; function scope_test2(){ $GLOBALS["c"] = $GLOBALS["b"] + $GLOBALS["c"]; } scope_test2(); echo $c; //7 ?>

    • ベストアンサー
    • PHP