Неопределенная переменная в PHPStan, но она объявлена ​​в другом месте - PullRequest
0 голосов
/ 12 декабря 2018

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

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

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

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

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

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

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

1 Ответ

0 голосов
/ 06 февраля 2019

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

например,

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

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

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