This is my code:
$fields = $bool === true ? $data[$value->uuid] : $data[$value->getUuid()];
in case "$value->uuid" oder "$value->uuid" is not an index of $data
, I get an error message:
Notice: Undefined index: 123
So I tried to make a validaton:
$fields = "";
if(isset($data[$value->uuid])) {
$fields = $data[$value->uuid];
}
if(isset($data[$value->getUuid()])) {
$fields = $data[$value->getUuid()];
}
But still I get the same error message.
You need also check if $value
has properties:
if(isset($value->uuid) && isset($data[$value->uuid])) {
$fields = $data[$value->uuid];
}
if(isset($value->getUuid()) && isset($data[$value->getUuid()])) {
$fields = $data[$value->getUuid()];
}
First isset()
checks property, second - index from $data
array.
Example
EDIT
Your condition would looks like:
//$fields = $bool === true ? $data[$value->uuid] : $data[$value->getUuid()];
$uuid = '';
$uuid_fn = '';
if(isset($value->uuid) && isset($data[$value->uuid])) {
$uuid = $data[$value->uuid];
}
if(isset($value->getUuid()) && isset($data[$value->getUuid()])) {
$uuid_fn = $data[$value->getUuid()];
}
$fields = $bool === true ? $uuid : $uuid_fn;