#php
Вопрос:
Есть функция, я печатаю ее с помощью echo, Можно ли написать условие в echo
Следуя моему коду: PHP
$cart_count = WC()->cart->cart_contents_count; // Set variable for cart item count
$cart_url = wc_get_cart_url(); // Set Cart URL
echo '
<div class="shopping-icons">
<i class="fas fa-shopping-cart"></i>
<a href='.$cart_url.' ><span class="shopping-text">amp;nbsp;Sepetim</span></a>
if ( '.$cart_count > 0 .') {
<span class="cart-count-container">
<span class="cart-count">'. $cart_count.'</span>
</span>
}
</div>
';
Комментарии:
1. Нет, тебе нужно уйти от эхо. Но вы можете объединить это так:
echo 'hello ', ($name ?: 'world'), '!';
2. Я не до конца понял комбинацию, которую вы сказали, не могли бы вы, пожалуйста, адаптировать ее к моему коду?
3. @Ferhat означает использование тернарного оператора. Что-то вроде
echo '<div>' . (($cart_count > 0) ? '<span></span>' : '') . '</div>';
4. да код сработал спасибо за внимание
Ответ №1:
Я имею в виду… ты мог бы сделать то же, что и я, и просто разделить эхо…? lmao.
Не уверен, правильно ли это делать или что, но я делал это так целую вечность, и это помогает в простом обслуживании, плюс его легко организовать с помощью вкладок/пробелов. Старайтесь не слишком сильно ударяться в лицо.. 🙂
PS: Всегда старайтесь использовать двойные кавычки, потому что так проще вводить переменные. С двойными кавычками вы можете просто поместить переменную со знаком$. Вы не можете сделать это с одинарными кавычками, вам придется использовать конкатенацию (как вы это сделали). Тем, кого ты знаешь.
echo "<div class='shopping-icons'>";
echo "<i class='fas fa-shopping-cart'></i>";
echo "<a href='$cart_url'><span class='shopping-text'>amp;nbsp;Sepetim</span></a>";
if($cart_count > 0){
echo "<span class='cart-count-container'>";
echo "<span class='cart-count'>$cart_count</span>";
echo "</span>";
}
echo "</div>";
Комментарии:
1. Без проблем. Троичный способ также работает, но он допускает любой тип операций. Вы все равно должны изучить тернарные и нулевые методы коалесценции, они очень полезны для записи меньшей информации.