No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de PHP: Integración con HTML

Curso de PHP: Integración con HTML

Carlos Eduardo Gómez García

Carlos Eduardo Gómez García

Condicionales

5/24
Recursos

Aportes 18

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Por si desean poner los shortcuts:

  • Abrir Visual Studio Code.
  • Ir a File → Preferences → User Snippets.
  • Buscar y abrir html.json.
  • Agregar dentro de los {}:
"php":{
	"prefix":["php"],
	"body": [ "<?php $0 ?>" ],
	"description": "php code tag"
},

"if":{
	"prefix": ["if"],
	"body": [
		"<?php if($1): ?>",
		"\t$2",
		"<?php endif; ?>"
	],
	"description": "if php tag"
}

Se me hace mas legible la primer forma

Con imágenes

<?php
    $se_hablo_de_bruno = true;

?>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Condicionales</title>
</head>
<body>
    <?php if ($se_hablo_de_bruno) { ?>
        <img src='https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQocJ5pZ_TN9hVhQiFLAK21u1ISHheOxvaYKWtkmmXelYqTFMQfJThUJ_jvovRKaKnn79I&usqp=CAU' alt='bruno sorprendido'/>
    
    <?php }else { ?>

        <img src='https://studiosol-a.akamaihd.net/letras/215x215/fotos/e/0/a/f/e0af6a91973bbef6efcd9a426414c910.jpg' alt='bruno contento'/>
    
    <?php } ?>
    
</body>
</html>

La forma correcta usar el “if” de php en html:

<?php if(condition): ?>
	# code...
<?php else: ?>
	# code...
<?php endif; ?>


En el caso de el if uso algo así y me parece más cómodo

<?php if (true) : ?>
	... HTML ...
<?php else : ?>
	... HTML ...
<?php endif; ?>

funciona con while, foreach, switch y for

Pensaba que solamente con las plantillas Blade de Laravel podía usar la última sintaxis de las condicionales. 🤯

La forma en la que si se deberia hacer es casi la misma que se usa en Flask con el motor de plantillas Jinja2

Super bien!
Ya voy entendiendo más o menos cual es considerada una buena practica al momento de combinar HTML y PHP.
Una pregunta, ¿Esa estructura de if recomendada, es otra forma de crear un if en PHP? ¿Como se le haria para colocar un else if?
.
Comparto mi apunte de la clase:

Condicionales con PHP y HTML

Puedes utilizar el siguiente código para imprimir contenido condicionalmente basado en el valor de una variable:

<?php
$age = 18;
$isAnAdult = ($age >= 18);
?>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Condition</title>
</head>
<body>
    <!-- ESTO NO SE DEBE DE HACER -->
    <?php if ($isAnAdult) {
        echo "<p>Eres un adulto porque tienes $age años</p>";
    }else{
        echo "<p>No eres un adulto porque tienes $age años</p>";
    }
    ?>
    <!-- ESTO ES ACEPTABLE -->
    <?php if($isAnAdult) {?>
        <p>Eres un adulto porque tienes <?= $age ?> años</p>
    <?php }else{?>
        <p>No eres un adulto porque tienes <?= $age ?> años</p>
    <?php }?>
    <hr>
    <!-- ESTA ES LA MEJOR FORMA DE HACER ESTO -->
    <?php if($isAnAdult): ?>
        <p>Eres un adulto porque tienes <?= $age ?> años</p>
    <?php else: ?>
        <p>No eres un adulto porque tienes <?= $age ?> años</p>
    <?php endif; ?>
</body>
</html>

Este código muestra diferentes formas de imprimir contenido condicionalmente en función del valor de la variable $isAnAdult. Puedes elegir la opción que mejor se adapte a tus necesidades y preferencias.

la mentó decepcionar a la comunidad, siempre lo había hecho de la primera forma. y la ultimita no tenia idea.

Existe una forma mas legible para la creacion de estructuras de control.

<?php  if(true):  ?>
<p>codigo HTML</p>
<?php  else: ?>
<p>contenido para el else</p>
<?php endif ; ?>

Pues en este caso yo considero que tanto por legibilidad como por escalabilidad yo utilizo el operador ternario, me parece que es la mas fácil de todas.

Ya podían enseñarnos bien desde el principio xD

Les recomiendo esta extensión de php que brinda un conjunto de snippets utiles.
https://marketplace.visualstudio.com/items?itemName=hakcorp.php-awesome-snippets

<!-- Se puede pero no se debe de hacer así (Código FEO jaja) -->
<?php 
$condition = false;

if($condition){
    echo "<b>Oh no</b>";
}else{
    echo "<b>Correcto</b>";
}
?>
<!-- Acceptable -->
<?php if($condition){ ?>
    <b>Oh no html</b>
<?php }else{ ?>
    <b>Correcto html</b>
<?php } ?>
<!-- Asi se debe de hacer (Código Pro) -->
<?php if($condition):?>
    <b>Oh no php</b>
<?php else: ?>
    <b>Correcto php</b>
<?php endif; ?>

Shorcut del if con el else agregado

		"if-php":{
			"prefix": ["if-php"],
			"body": [
				"<?php if($1): ?>",
				"\t$2",
				"<?php else: ?>",
				"\t$2",
				"<?php endif; ?>"
			],
			"description": "if php tag"
		}

Genial, siempre lo hacia de la manera aceptable, y ahora se que hay una manera correcta.

te amo profe super divertido.
(We Don’t Talk About Bruno no no no)