pasar - ¿Puede HTML insertarse dentro de la declaración "si" de PHP?
php y html diferencias (6)
El uso de etiquetas cerrar / abrir de PHP no es una solución muy buena por dos razones: no puede imprimir variables de PHP en HTML sencillo y hace que su código sea muy difícil de leer (el siguiente bloque de código comienza con un corchete de final }
, pero el lector no tiene idea de lo que era antes).
Mejor es usar la sintaxis heredoc . Es el mismo concepto que en otros idiomas (como bash).
<?php
if ($condition) {
echo <<< END_OF_TEXT
<b>lots of html</b> <i>$variable</i>
lots of text...
many lines possible, with any indentation, until the closing delimiter...
END_OF_TEXT;
}
?>
END_OF_TEXT
es tu delimitador (puede ser básicamente cualquier texto como EOF, EOT). Todo lo que se encuentra en medio se considera cadena por PHP como si estuviera entre comillas dobles, por lo que puede imprimir variables, pero no tiene que escapar de ninguna comilla, por lo que es muy conveniente para imprimir atributos html.
Tenga en cuenta que el delimitador de cierre debe comenzar al principio de la línea y el punto y coma debe colocarse inmediatamente después de él sin otros caracteres ( END_OF_TEXT;
).
Heredoc con comportamiento de cadena en comillas simples ( ''
) se llama nowdoc . No se realiza ningún análisis dentro de nowdoc. Lo usa de la misma manera que heredoc, solo coloca el delimitador de apertura entre comillas simples: echo <<< ''END_OF_TEXT''
.
Me gustaría incrustar HTML dentro de una declaración if de PHP, si es que es posible, porque estoy pensando que el HTML aparecerá antes de que se ejecute la instrucción PHP if.
Estoy tratando de acceder a una tabla en una base de datos. Creé un menú desplegable en HTML que enumera todas las tablas de la base de datos y una vez que selecciono la tabla del menú desplegable, presiono el botón Enviar.
Uso la función isset para ver si se ha presionado el botón Enviar y ejecuto un ciclo en PHP para mostrar el contenido de la tabla en la base de datos. Entonces, en este punto, tengo la tabla completa, pero quiero ejecutar más consultas en esta tabla. De ahí la razón por la que estoy tratando de ejecutar más HTML dentro de la declaración if. En definitiva, intento actualizar los contenidos (1 o más contenidos en una fila o varias filas) o eliminarlos (1 o más filas) en la tabla. Lo que trato de hacer es crear otro menú desplegable que corresponda a una columna en una tabla para facilitar la búsqueda en la tabla y botones de opción que correspondan a si me gustaría actualizar o eliminar contenido en la tabla.
Por lo tanto, si la condición es igual al valor que desea, el documento php ejecutará "incluir" e incluir agregará ese documento a la ventana actual, por ejemplo:
`
<?php
$isARequest = true;
if ($isARequest){include(''request.html'');}/*So because $isARequest is true then it will include request.html but if its not a request then it will insert isNotARequest;*/
else if (!$isARequest) {include(''isNotARequest.html'')}
?>
`
Sí,
<?php
if ( $my_name == "someguy" ) {
?> HTML GOES HERE <?php;
}
?>
Sí.
<? if($my_name == ''someguy'') { ?>
HTML_GOES_HERE
<? } ?>
<?php if ($my_name == ''aboutme'') { ?>
HTML_GOES_HERE
<?php } ?>
<?php if($condition) : ?>
<a href="http://yahoo.com">This will only display if $condition is true</a>
<?php endif; ?>
A pedido, aquí está elseif y else (que también puedes encontrar en php.net/manual/en/control-structures.alternative-syntax.php )
<?php if($condition) : ?>
<a href="http://yahoo.com">This will only display if $condition is true</a>
<?php elseif($anotherCondition) : ?>
more html
<?php else : ?>
even more html
<?php endif; ?>
Es así de simple.
El HTML solo se mostrará si la condición está satisfecha.