PHP не удается передать значения в href

 <?php

 $t = date("H");

 if ($t == "02") 
 {echo $url0 = "https://google.com";}
 elseif($t == "01") {echo $url= "https://amazon.com";}  
 else {
 echo "Have a good night!";}
 ?>
<a href="'.$url0.'" class="td_download_btn"><i class="download_icon"></i> Get Telegram for<b>Windows</b></a>

Не удается передать значения $url0 до href. Закинуть в внутрь цикла не выйдет уже пробовал, ломает кучу всего. При исполнении просто пишет что файл не может найти хотя это ссылка. Пробовал <?$url0?> <=?$url0?> так ошибки не выдает но кнопка перестает работать. Спасибо за помощь)


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

Автор решения: Алексей Шиманский
<a href="<?= $url0; ?>" class="td_download_btn"><i class="download_icon"></i> Get Telegram for<b>Windows</b></a>
→ Ссылка
Автор решения: Yurik Gagarin
if ($t == "02") {
    $url0 = "https://google.com";
} elseif($t == "01") {
    $url= "https://amazon.com";
} else {
    $error = "Have a good night!";
}

echo - функция вывода строки

<a href="<?=$url0?>" class="td_download_btn"><i class="download_icon"></i> Get Telegram for<b>Windows</b></a>
→ Ссылка
Автор решения: Красовская Маргарита

Как-то так..

<?php
 $t = date("H");

 if ($t == "02") {
   $url0 = "https://google.com";
 }
 elseif($t == "01") {
   $url = "https://amazon.com";
 }  
 else {
   echo "Have a good night!";
 }
?>


<a href="<?=$url0?>" class="td_download_btn"><i class="download_icon"></i> Get Telegram for<b>Windows</b></a>

При задании переменных не нужно писать echo. Знак равно "=" в

<?=переменная?>

равнозначен echo.

echo нужно использовать только для вывода чего-то..

→ Ссылка
Автор решения: Anton Shchyrov

Ошибки:

  1. Вы переменную $url0 определяете только в условии if ($t == "02"). В условии elseif($t == "01") определяется уже переменная $url, а в условии else не определяется вообще никаких переменных

  2. Конструкция echo $url0 = "https://google.com"; эквивалентна двум операторам

    $url0 = "https://google.com";
    echo $url0;
    

    врядли вам нужен здесь echo

  3. Конструкция <? ... ?> это короткая запись конструкции <?php ... ?> и может быть отключена в настройках. Если вы хотите что-то вывести этой конструкцией, то вам нужно писать <?php echo $url0; ?>, а конструкции <=? ... ?> нет вообще. Вместо нее есть конструкция <?= ... ?> которая эквивалентна конструкции <?php echo ...; ?> и именно она вам и нужна

  4. В записи

    <a href="'.$url0.'" class="td_download_btn">
    

    вы переборщили с кавычками. Одинарные кавычки тут не нужны.

Итого правильный код

 <?php

 $t = date("H");

 if ($t == "02")  {
    $url0 = "https://google.com";
 } elseif ($t == "01") {
    $url0= "https://amazon.com";
 }   else {
    $url0 = "javascript:void(0)";
}
?>
<a href="<?=$url0?>" class="td_download_btn">Test</a>

Ссылка на Ideone

→ Ссылка