C последними улучшениями от Никиты все становится предсказуемее, и тем не менее код ниже вполне будет работать, хоть и не так, как , наверное, ожидалось.
debug=_0 // .envЧтобы избавиться от таких проблем, можно взять
(bool) getenv('debug'); // true!
filter_var с его флагами и бросать свой Exception. Или можно взять обертку над значениями zakirullin/mess:
(new Mess(getenv('debug')))->getAsBool();
// _0 => UncastableValueException
В Mess можно скармливать массивы/примитивы:$mess = new Mess($apiResponse);
$profile = new Profile(
$mess['profile']['name']->getString(),
$mess['votes']->getInt(),
$mess['is_deleted']->getBool()
)
// Dealing with typed ValueObject