/ / Môžem vo vyhlásení IF-ELSE v PHP použiť namiesto echa HTML? - php, html, echo

Môžem vo výpise IF-ELSE v PHP použiť HTML namiesto echo? - php, html, echo

if( $user->username == "XYZ" )
{
echo "hello, XYZ";
}
else
{
echo "hello, guest";
}

Vo vyššie uvedenom kóde môžem použiť čistý html kód, ktorý sa vykoná v prípade Výrok IF je pravdivý namiesto použitia echo ?

odpovede:

2 pre odpoveď č. 1

Áno, môžete to urobiť:

if( $user->username == "XYZ" )
{
?>
hello, XYZ
<?
}
else
{
?>
hello, guest
<?
}

Niekedy to vyzerá lepšie a jednoduchšie. Ale v skutočnosti je oveľa lepšie vložiť php a html kód do rôznych súborov (samostatná logika, štýly a údaje).


0 pre odpoveď č. 2
if( $user->username == "XYZ" )
{ ?>
<p>Hello <b><i>XYZ</i></b>
<?php }

else { ?>
<p>Hello <b><i>Guest</i></b>
<?php
}

Dúfam, že to máš.


0 pre odpoveď č. 3

HTML samozrejme môžete písať priamo tak, že zatvoríte <?php ?> tagy.

<?php if( $user->username == "XYZ") { ?>
hello, XYZ<br>
<?php } ?>
<?php else { ?>
hello, guest<br>
<?php } ?>

Môžete samozrejme tiež heredoc:

<?php
$str = <<<FOO
This is a
demo message
FOO;

echo $str;
?>

ale nepoužívam to, pretože sa mi to pokazí s akýmkoľvek zvýrazňujúcim editorom (myslí si, že je to text a páči sa mi zvýraznený môj HTML)

Najlepšie sa mi páči, hlavne keď sú moje výstupy veľké:

<?php if( $user->username == "XYZ") {
include("user_template.php");
}
<?php else { ?>
include("guest_template.php");
<?php } ?>

ktoré v skutočnosti obsahujú iba HTML, ktoré sú tam obsiahnuté.


0 pre odpoveď č. 4

Môžu byť napísané aj takto, čitateľnejšie pre niekoľko riadkov.

<?php if ($user->username == "XYZ") : ?>
Hello, XYZ
<?php else : ?>
Hello, Guest
<?php endif; ?>