Неустранимая ошибка: нельзя использовать isset () в результате выражения

При кодировании с isset я получаю фатальную ошибку. Я искал stackoverflow, но результаты не являются удовлетворительными.

я осознаю

Неустранимая ошибка: нельзя использовать isset () в результате выражения (вместо этого вы можете использовать выражение «null! ==»)

Мои коды

 if (!isset( $size || $color )) { $style = ''; }else{ $style = 'font-size : ' . $size . ';color:' . $color; } 

Как указано в комментариях (и сообщении об ошибке), вы не можете передать результат выражения isset.

Вы можете использовать несколько вызовов isset или отменить логику вашего блока if / else и передать несколько параметров isset, который, по моему мнению, является самым чистым решением:

 //true if both are set if(isset($size, $color)) { $style = 'font-size : ' . $size . ';color:' . $color; }else{ $style = ''; } 

Вы можете очистить это немного позже, установив сначала значение по умолчанию, тем самым избегая необходимости в другом разделе:

 $style = ''; if(isset($size, $color)) { $style = 'font-size : ' . $size . ';color:' . $color; } 

Вы даже можете использовать троицу, которую некоторые люди находят сложнее читать:

 $style = isset($size, $color) ? 'font-size : ' . $size . ';color:' . $color : ''; 

вы shuold используйте этот путь

 if (!isset( $size ) || !isset( $color )) { 

Ваше выражение всегда возвращает true или false => В теории isset всегда возвращает true, поэтому PHP не допускает этого
+ Изменить

 if (!isset( $size || $color )) { 

к

 if (!isset($size) || !isset($color)) {