php - вставка переменной в строку эха
$i = 1
echo '
<p class="paragraph$i">
</p>
'
++i
Попытка вставить переменную в повторяющуюся строку. Приведенный выше код не работает. Как мне преобразовать переменную php в строку echo?
10 answers
Одинарные кавычки не будут анализировать переменные PHP внутри них. Либо используйте двойные кавычки, либо используйте точку, чтобы расширить эхо.
$variableName = 'Ralph';
echo 'Hello '.$variableName.'!';
ИЛИ
echo "Hello $variableName!";
И в вашем случае:
$i = 1;
echo '<p class="paragraph'.$i.'"></p>';
++i;
ИЛИ
$i = 1;
echo "<p class='paragraph$i'></p>";
++i;
Всегда используйте двойные кавычки при использовании переменной внутри строки и используйте обратную косую черту для любых других двойных кавычек, кроме начальных и конечных. Вы также можете использовать скобки, как показано ниже, чтобы было проще находить переменные внутри строк и делать их более чистыми.
$var = 'my variable';
echo "I love ${var}";
Или
$var = 'my variable';
echo "I love {$var}";
Выше будет возвращено следующее: Я люблю свою переменную
Интерполяция переменных не выполняется в одинарных кавычках. Вам нужно использовать двойные кавычки как:
$i = 1
echo "<p class=\"paragraph$i\"></p>";
++i;
echo '<p class="paragraph'.$i.'"></p>'
Должно сработать.
echo '<p class="paragrah"' . $i . '">'
echo '<p class="paragraph'.$i.'"></p>';
Вот 3 лучших способа сделать это.
Способ первый:
$x = '+3';
echo "1+2$x";
Двойные кавычки (") позволяют просто передать переменную непосредственно в нее.
Второй способ:
$x = '+3';
echo '1+2'.$x;
Если вы не хотите использовать двойные кавычки по какой-либо причине, сделайте это. (.) в основном просто означает "Добавить". Так что, если вы захотите добавить что-то вроде, 1+2+3+4+5 и пусть ваша переменная будет посередине - все, что вам нужно сделать это:
$x = '+3';
echo '1+2'.$x.'+4+5';
Метод 3: (Добавление переменной непосредственно внутри вызываемой переменной)
$x = '+3';
$y = '+4';
$z = '+5';
echo "1+2${"x".$y.$z}";
Output: 1+2+3+4+5
Здесь мы добавляем $y
и $z
к $x
, используя "."
; {}
расставьте приоритеты в работе внутри него, прежде чем отображать неопределенную
переменную.
Это лично очень полезная функция для вызова таких функций, как:
//Add the Get request to a variable.
$x = $_GET['tool'];
//Edit: If you want this if to contain multiple $xresult's change the if's
//Conditon in the "()" to isset($get). Simple. Now just add $xresultprogram
//or whatever.
if($x == 'app') {
$xresultapp = 'User requested tool: App';
}
//Somewhere down far in HTML maybe...
echo ${"xresult".$x};
//Note: doing ${"xresult".$_GET['tool']} directly wont work.
//I believe this is because since some direct non-echo html was loaded
//before we got to this php section it cant load cause it has already
//Started loading client side HTML and JS.
Это вывело бы $xresultapp, запрошенный пользователем инструмент: Приложение, если бы они это сделали пример.com?инструмент= приложение. Вы можете изменить с помощью оператора else, чтобы определить, что происходит, когда запрашивается что-то другое, кроме приложения и т. Д. Помните, что все чувствительно к регистру, поэтому, если они запросят приложение заглавными буквами, оно не будет выводить $xresultapp.
Используйте двойные кавычки:
$i = 1;
echo "
<p class=\"paragraph$i\">
</p>
";
++i;
Вы можете попробовать это
$i = 1
echo '<p class="paragraph'.$i.'"></p>';
++i;
Иногда "Моя переменная: ${значение}";