Этот код работает
<?php
for ($x = 0; $x <= 10; $x++) {
echo "The number is: $x <br>";
}
?>
но если вместо "<=" я использую просто "=", то php попадает в бесконечный цикл, который
<?php
for ($x = 0; $x = 10; $x++) {
echo "The number is: $x <br>";
}
?>
Это ожидаемое поведение?
Да, вместо оператора сравнения используется оператор присваивания. Теперь нет конца для этого цикла.
Да, это ожидалось.
Вы должны использовать <= вместо = только
<= оператор comparaison: http://php.net/manual/en/language.operators.comparison.php
= - оператор присваивания: http://php.net/manual/en/language.operators.assignment.php
==
, то, что OP должен действительно использовать, если они хотят видеть, равно ли значение. Хотя я знаю, что он не будет зацикливаться вообще, потому что средняя часть цикла for никогда не будет истинной.
=
для сравнения, но==
или===
. Но в этом случае ваш цикл не будет работать вообще, так что вы пытаетесь достичь?