1
0
mirror of https://github.com/danog/psalm.git synced 2024-11-27 12:55:26 +01:00
psalm/docs/running_psalm/issues/MixedAssignment.md
2022-09-15 19:38:51 +02:00

506 B
Raw Blame History

MixedAssignment

Emitted when assigning an unannotated variable to a value for which Psalm cannot infer a type more specific than mixed.

<?php

$a = $GLOBALS['foo'];

How to fix

The above example can be fixed in a few ways by adding an assert call:

<?php

$a = $GLOBALS['foo'];
assert(is_string($a));

or by adding an explicit cast:

<?php

$a = (string) $GLOBALS['foo'];

or by adding a docblock

<?php

/** @var string */
$a = $GLOBALS['foo'];