Это возможно, только если вы немного измените свой способ мышления
$data=7;$data2=false;$data3='';
if($filter=array_filter(compact('data','data2','data3'))){
echo key($filter);//output data
}
Небольшое объяснение:
сначала мы сжимаем все переменные в один массив с функцией compact
, а второймы фильтруем массив с помощью функции array_filter
. На этом шаге все готово. Если $filter
равно empty
, условие if
будет оценено как ложное, и если $filter
не равно empty
, это означает, что по крайней мереодна из переменных отличается от false or null or empty string
Тогда, чтобы узнать одну из этой переменной, которая вызвала, если вы можете проверить массив $ filter, особенно первый элемент.