Если мы что-то упускаем, это природа того, что компилятор выдает предупреждение. В любом случае я хотел игнорировать предупреждение или избавиться от отображения предупреждений в программах php.
Пример предупреждения:
Error(s), warning(s): PHP Notice: Undefined variable: z in source_file.php on line 11
Ниже приведен пример предупреждения: как мы можем игнорировать или подавить предупреждение?
<?php
$x=4;
$y=3;
function func($x=3 ,$y=4)
{
$z=$x+$y/$y+$x;
echo '$z';
}
echo $x;
echo $y;
echo $z;
func($x,$y);
?>






Переменная $ z имеет область функционального уровня, которую вы объявляете в функции. Таким образом, вы получаете это предупреждение. Кроме того, нет необходимости определять вашу функцию как
function func($x=3 ,$y=4) {} // here you are limiting the function to perform calculation for only 3 and 4
Поскольку вы передаете значения функции, определите свою функцию как
function func($x ,$y){}
и используйте эту функцию в своем коде столько раз, сколько захотите.
Для достижения желаемого результата попробуйте следующий код
$x=4;
$y=3;
function func($x=3 ,$y=4)
{
return $x+$y/$y+$x;
}
echo $x;
echo $y;
$z = func($x,$y);
echo $z;
вы получаете это предупреждение, потому что не определили переменную $ z. После того, как вы определили $ z, вы больше не получите этого предупреждения.
Он пытается сказать вам, что z не определен, откуда вы пытаетесь его использовать. Фактически, он определяется только в функции func. Просмотрите объем переменных в PHP.
Редактировать:
Q: Как убрать предупреждение?
О: Вам нужно либо определить z, либо отключить предупреждение от компилятора. Я бы рекомендовал сильно вам его определить. Ответ ниже уже дает возможную альтернативу вашему коду, в которой проблема решена.
Спасибо, но не могли бы вы показать мне, как убрать предупреждения?
Проверить мой ответ
Вы печатаете переменную $ z в строке 11, которая не определена. Вы определили $ x и $ y, но не $ z.
$ Z в вашей функции "func" существует только в области действия функции, а не в "основном" скрипте.
Итак, я думаю, это то, что вы пытаетесь сделать:
<?php
function func($x=3 ,$y=4)
{
$z=$x+$y/$y+$x;
return $z;
}
$x=4;
$y=3;
//Now $z is defined!
$z = func($x,$y);
echo $z;
?>
потому что вы не определили $ z. правильный код приведен ниже.
<?php
$x=4;
$y=3;
$z = "";
function func($x=3 ,$y=4){
$z=$x+$y/$y+$x;
echo $z;
}
echo $x;
echo $y;
echo $z;
func($x,$y);
?>Спасибо, но не могли бы вы показать мне, как убрать предупреждения?
Спасибо, но не могли бы вы показать мне, как убрать предупреждения?