Помогите с тернарным операторам

Я хочу сделать выбор для картинки по названию карты, если такой нету, чтобы выбирало default. Выводит картинку если есть, а если нету, то не выводит картинку default.

<img src="<?php echo ! file_exists($General->arr_general['site'] . 
         'storage/cache/img/maps/' . 
         $Player->found[ $Player->server_group ]['mod'] . '/' . 
         array_keys( $Player->maps )[0] . 'jpg') ? 
               $General->arr_general['site'] .
              'storage/cache/img/maps/' .
               $Player->found[ $Player->server_group ]['mod'] . '/' .   
               array_keys( $Player->maps )[0]
        : $General->arr_general['site'] .
          'storage/cache/img/maps/' . 
           $Player->found[ $Player->server_group ]['mod'] . 
           '/default' ?>.jpg">```

Ответы (1 шт):

Автор решения: teran

не надо лепить все в одну строку. сначала составьте название файла. потом проверьте его наличие. если все ок, то выводите, если нет, то заменяете.

<?php
    $path = $General->arr_general['site'] . 'storage/cache/img/maps/' . 
             $Player->found[ $Player->server_group ]['mod'] . '/';

    $img = $path . key($Player->maps) . 'jpg';
    if(!file_exists($img)){
         $img = "{$path}/default.jpg";
    }
?>
<img src="<?= $img ?>"/>
→ Ссылка