2016-09-16 3 views
9

В чем разница между "${varname}" и "{$varname}" в строковой интерполяции PHP? (обратите внимание на положение $)В чем разница между этими синтаксисами PHP-интерполяции строк

РНР документы говорят, что вы можете использовать любой, но не четко объяснить, в чем разница между этими двумя методами. Есть ли разница?

+3

См: http://stackoverflow.com/a/2596838/3933332 – Rizier123

ответ

4

Первый - это интерполяция плюс переменная переменная (динамическая переменная), то есть вы можете использовать выражения здесь, чтобы определить имя переменной, которую вы хотите интерполировать. "${func()}" Хотя второй синтаксис используется для отдельной переменной из текста "some{$variable}text". Вы действительно можете комбинировать их:

function func(){ 
    return 'foo'; 
} 
$foo = 'bar'; 
echo "some{${func()}}text"; 

Выходы: somebartext

Смежные вопросы