2016-02-24 17 views
12

これを説明する方法はわかりませんが、単純な言葉で言えば、値を出力するときに{$variable}を使用している人を見てきました。私は{$variable}がすべてを動かさないことに気づいた。いつ{$variable}を使用する必要がありますか?変数の周りに中括弧をラップする場合

+1

PHPフレームワーク構文であるかもしれないバニラPHP、ではないのですから、例えば、ブレードのテンプレートエンジンのための今、カーリーbraces-

<?php $var = "way"; echo "Two {$var}s to define a variable in a string."; ?> 

出力を使用して上記の例を参照Laravel 5は '{{$ variable}}'を使って印刷します。 – Asur

+5

@asurは間違っています。これは[複合(中括弧)構文](http://php.net/manual/en/language.types.string.php#language.types.string.parsing.complex)として知られています。 –

+2

PHP構文で$ {}の意味は何ですか?](http://stackoverflow.com/questions/5571624/what-does-mean-in-php-syntax) –

答えて

26

PHP中括弧どのようなものです:

あなたは文字列は4つの異なる方法で指定することができることを知っています。これらの方法のうちの2つは - 二重引用符( "")とheredoc構文です。これらの2つのタイプの文字列で変数を定義することができ、PHPインタプリタは文字列内でその変数を解析または解釈します。

変数を文字列に定義するには、文字列内で変数を定義する最も一般的な方法である単純な構文と、中括弧を使用して変数を定義する複雑な構文の2つの方法があります。

中括弧構文:

は、中括弧で変数を使用するには非常に簡単です。

{$variable_name}

注:だけのようで、{と}の変数をラップ{$との間に隙間があってはなりません。それ以外の場合、PHPインタプリタは$の後の文字列を変数とみなしません。

中括弧の例:

<?php 
$lang = "PHP"; 
echo "You are learning to use curly braces in {$lang}."; 
?> 

出力:

You are learning to use curly braces in PHP. 

中括弧を使用するとき:あなたは、文字列内の変数を定義している

、PHPはアップミックスかもしれません変数を定義するために単純な構文を使用すると、他の文字との変数が生成され、エラーが発生します。

<?php 
$var = "way"; 
echo "Two $vars to defining variable in a string."; 
?> 

出力:下記の例を参照してください。上記の例では

Notice: Undefined variable: vars … 

を、PHPのインタプリタは、変数が$ VARで、$変数をvarsの考慮、しかし。変数名と文字列内の他の文字を区切るには、中括弧を使用できます。

Two ways to define a variable in a string. 

出典:http://schoolsofweb.com/php-curly-braces-how-and-when-to-use-it/

関連する問題