2016-02-24 26 views
12

Nie wiem jak to wyjaśnić, ale w prostych słowach widziałem ludzi używających {$variable} podczas wyprowadzania wartości. Zauważyłem, że {$variable} nie działa wszystko. Kiedy powinniśmy użyć {$variable}?Kiedy owijać nawiasy klamrowe wokół zmiennej

+1

To nie jest wanilia php, które mogą być php składni ramy, na przykład szablonu ostrze silnika od Laravel 5 używa '{{$ variable}}' do drukowania rzeczy. – Asur

+5

@asur, który jest nieprawidłowy. Jest to znane jako [złożona (kręcona) składnia] (http://php.net/manual/en/language.types.string.php#language.types.string.parsing.complex). –

+2

Możliwy duplikat [Co oznacza $ {} w składni PHP?] (Http://stackoverflow.com/questions/5571624/what-does-mean-in-php-syntax) –

Odpowiedz

26

Jakie PHP nawiasy klamrowe:

Wiesz, że łańcuch może być określona na cztery różne sposoby. Dwa z nich to: podwójny cudzysłów ("") i heredoc. Możesz zdefiniować zmienną w tych 2 typach ciągów, a interpreter PHP będzie analizować lub interpretować tę zmienną również w ciągu znaków.

Istnieją dwa sposoby definiowania zmiennej w łańcuchu - prosta składnia, która jest najczęściej używaną metodą definiowania zmiennych wewnątrz łańcucha i złożoną składnię, która używa nawiasów klamrowych do definiowania zmiennych.

nawiasach klamrowych składnia:

Aby użyć zmiennej z klamrami jest bardzo proste. Wystarczy owinąć zmienną {i} jak:

{$variable_name}

Uwaga: Nie może być dowolny odstęp między {i $. Inaczej, interpreter PHP nie będzie traktował ciągu po $ jako zmiennej. Przykładem

Curly szelki:

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

wyjściowa:

You are learning to use curly braces in PHP. 

Kiedy używać nawiasów klamrowych:

Przy definiowaniu zmiennej wewnątrz ciągu znaków, PHP może mieszać zmienna z innymi znakami, jeśli używa się prostej składni do zdefiniowania zmiennej, a to spowoduje błąd. Patrz poniższy przykład:

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

wyjściowa:

Notice: Undefined variable: vars … 

W powyższym przykładzie, interpreter PHP uważa $ Vars zmienną, ale Zmienna $ var. Aby oddzielić nazwę zmiennej od innych znaków w ciągu znaków, można użyć nawiasów klamrowych. Teraz patrz powyższy przykład za pomocą kręcone braces-

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

wyjściowa:

Two ways to define a variable in a string. 

Źródło: http://schoolsofweb.com/php-curly-braces-how-and-when-to-use-it/

Powiązane problemy