PHP объединить переменную в строку внутри троичного оператора - PullRequest
0 голосов
/ 26 февраля 2020

У меня возникли проблемы с тем, чтобы этот троичный оператор работал без ошибок.

$longtitle = 'long-title-' . browser();
<h5 class="{{ (strlen($title_part_i) > 29 ) ? "'text-uppercase case-study-title-01 mb-0' . $longtitle" : 'text-uppercase case-study-title-01 mb-0'}}"><?=$title_part_i?></h5>

Я пытаюсь объединить переменную $longtitle с именем класса истинного условия. Я уверен, что где-то что-то пропустил, но не могу сказать, что.

1 Ответ

1 голос
/ 26 февраля 2020

Пожалуйста, измените его следующим образом.

<h5 class="{{ (strlen($title_part_i) > 29 ) ? 'text-uppercase case-study-title-01 mb-0'.$longtitle : 'text-uppercase case-study-title-01 mb-0' }}">
    <?= $title_part_i; ?>
</h5>

Ваша конкатенация полностью испорчена. Старайтесь не использовать сокращений, поскольку это может создать больше путаницы.

Вы также можете попробовать сделать то же самое с простым условием if.

<h5 class="<?php if(strlen($title_part_i) > 29 ){ 
       echo 'text-uppercase case-study-title-01 mb-0 '.$longtitle;
    }
    else{
       echo 'text-uppercase case-study-title-01 mb-0'; 
    }
    ?>">
    <?= $title_part_i; ?>
</h5>

Надеюсь, это поможет вам.

...