Неопределенная переменная в PHPStan, но она объявлена ​​в другом месте

Как вы справляетесь с этими сценариями в PHPStan:

  1. Допустим, вы используете простой PHP в качестве движка шаблонов. Например.,
// view.php

<b><?=$foo?></b>

  1. Скажем, у вас есть 2 файла a.php а также b.php
// a.php
$foo = 'bar';

// b.php
require 'a.php';
echo $foo;

PHPStan сообщит об этом как Undefined variable: $foo

Как вы справляетесь с этим? Можно ли сконфигурировать PHPStan для выполнения вашего приложения, чтобы он знал, что эти переменные фактически определены во время выполнения?

0

Решение

Все, что вам нужно сделать, это выполнить проверку, чтобы убедиться, что переменная установлена.

например

if (isset($foo)) {
echo $foo;
}

или что-то вроде следующего, если вы не хотите обернуть весь свой код в if,

if (! isset($foo)) {
throw new Exception('$foo not set');
}
0

Другие решения

Других решений пока нет …