Diferencia entre revisiones de «PHP Sintaxe»
Ir a la navegación
Ir a la búsqueda
() |
|||
| (No se muestran 7 ediciones intermedias de 2 usuarios) | |||
| Línea 1: | Línea 1: | ||
| − | == Sintaxe == | + | ==Sintaxe== |
* As páxinas que creamos en php deben ter algunha destas extensións: .php, .phtml, .php3, .php4, .php5, .php7, .phps | * As páxinas que creamos en php deben ter algunha destas extensións: .php, .phtml, .php3, .php4, .php5, .php7, .phps | ||
| − | * Normalmente teremos de extensión | + | * Normalmente teremos de extensión '''.php''' |
* Para engadir código PHP a unha páxina temos que escribir estas etiquetas dentro do código da páxina: | * Para engadir código PHP a unha páxina temos que escribir estas etiquetas dentro do código da páxina: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="1,5" > |
<?php | <?php | ||
| Línea 22: | Línea 22: | ||
* Se a páxina php soamente contén código php ou finaliza con código php, é preferible non engadir a etiqueta ?> ao final da páxina. | * Se a páxina php soamente contén código php ou finaliza con código php, é preferible non engadir a etiqueta ?> ao final da páxina. | ||
: Por exemplo: | : Por exemplo: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 39: | Línea 39: | ||
* Calquera código que poñamos fora das etiquetas de inicio e fin do código PHP será ignorado polo intérprete de PHP e se tratará como código HTML. | * Calquera código que poñamos fora das etiquetas de inicio e fin do código PHP será ignorado polo intérprete de PHP e se tratará como código HTML. | ||
: Por exemplo: | : Por exemplo: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 59: | Línea 59: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="5-7,10-12" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 77: | Línea 77: | ||
: E incluso dentro de liñas HTML: | : E incluso dentro de liñas HTML: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="11" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 103: | Línea 103: | ||
'''Exemplo de boa programación:''' | '''Exemplo de boa programación:''' | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="9-16" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 127: | Línea 127: | ||
'''Exemplo de mala programación:''' | '''Exemplo de mala programación:''' | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="9-16" > |
<html> | <html> | ||
<head> | <head> | ||
| Línea 155: | Línea 155: | ||
: Por exemplo: | : Por exemplo: | ||
| − | ::<syntaxhighlight lang=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="" > |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | ||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
| Línea 177: | Línea 177: | ||
: Este código produce esta saída HTML: | : Este código produce esta saída HTML: | ||
| − | ::<syntaxhighlight lang="php" line enclose="div" highlight=" | + | ::<syntaxhighlight lang="php" line enclose="div" highlight="6" > |
<html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"> | <html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"> | ||
<head> | <head> | ||
| Línea 183: | Línea 183: | ||
</head> | </head> | ||
<body> | <body> | ||
| − | + | <h1 id=cabeceira>Isto é unha cabeceira h1</h1> | |
| − | |||
| − | |||
| − | |||
| − | |||
</body> | </body> | ||
</html> | </html> | ||
| Línea 193: | Línea 189: | ||
| − | : Se levamos este código á [https://validator.w3.org/#validate_by_input páxina de validación] veremos que non cumpre o stándard XHTML, xa que o id da etiqueta h1 non está entrecomillado. | + | : Se levamos este código á [https://validator.w3.org/#validate_by_input páxina de validación] veremos que non cumpre o stándard XHTML, xa que o id da etiqueta h1 non está entrecomillado. |
| − | == Comentarios == | + | <br /> |
| + | ==Comentarios== | ||
* Podemos poñer comentarios de liña ou comentarios de bloque. | * Podemos poñer comentarios de liña ou comentarios de bloque. | ||
| Línea 216: | Línea 213: | ||
: Máis información no seguinte enlace: http://php.net/manual/es/language.basic-syntax.comments.php | : Máis información no seguinte enlace: http://php.net/manual/es/language.basic-syntax.comments.php | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | <br /> | ||
| + | ==Detectar erros== | ||
| + | |||
| + | * Cando programedes en PHP e teñades algún error de sintaxe, o páxina pode quedar en branco e sen saber que é o que está a pasar. | ||
| + | : Se vos pasa iso ou se non sabedes onde está o erro, podedes: | ||
| + | :* Mirar o arquivo /var/log/apache2/error.log (ao final de todo) | ||
| + | :* Poñer temporalmente dentro da páxina php o seguinte código, arriba de todo: | ||
| + | |||
| + | ::<syntaxhighlight lang="php" enclose="div" highlight="" > | ||
| + | ini_set('display_errors', 1); | ||
| + | ini_set('display_startup_errors', 1); // Non debería ser necesario xa que amosa posibles erros de configuración no php.ini ou erros antes da execución do script, pero podemos poñelo por se acaso. | ||
| + | error_reporting(E_ALL); | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | :: <u>Unha vez atopades o erro, lembrar quitar dichas liñas da páxina.</u> | ||
| + | |||
| + | |||
| Línea 221: | Línea 239: | ||
| − | <br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- ( | + | <br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- (2023). |
Revisión actual del 09:43 8 dic 2023
Sintaxe
- As páxinas que creamos en php deben ter algunha destas extensións: .php, .phtml, .php3, .php4, .php5, .php7, .phps
- Normalmente teremos de extensión .php
- Para engadir código PHP a unha páxina temos que escribir estas etiquetas dentro do código da páxina:
1 <?php 2 3 // CODIGO PHP 4 5 ?>
Nota: É posible poñer as etiquetas <? ?> pero non recomendable. Para facelo teremos que modificar o arquivo php.ini como ven indicado neste enlace.
- Se a páxina php soamente contén código php ou finaliza con código php, é preferible non engadir a etiqueta ?> ao final da páxina.
- Por exemplo:
1 <html> 2 <head> 3 </head> 4 <body> 5 <?php 6 7 echo "ola"; 8 echo "</body></html>";
- Con isto evitamos engadir espazos en branco ou novas liñas non desexadas que poidan ir ao rematar o código php.
- Calquera código que poñamos fora das etiquetas de inicio e fin do código PHP será ignorado polo intérprete de PHP e se tratará como código HTML.
- Por exemplo:
1 <html> 2 <head> 3 </head> 4 <body> 5 <?php 6 7 echo "ola"; 8 9 ?> 10 <br/> 11 <h1>Este é unha cabeceira en html </h1> 12 </body> 13 </html>
- É posible ter varios bloques de código PHP dentro da mesma páxina,
1 <html> 2 <head> 3 </head> 4 <body> 5 <?php 6 echo "ola"; 7 ?> 8 <br/> 9 <h1>Este é unha cabeceira en html </h1> 10 <?php 11 echo "adeus"; 12 ?> 13 </body> 14 </html>
- E incluso dentro de liñas HTML:
1 <html> 2 <head> 3 <meta charset="UTF-8"> 4 <title></title> 5 </head> 6 <body> 7 <?php 8 echo "ola"; 9 ?> 10 <br/> 11 <h1>Este é unha cabeceira en html <?php echo "con php"; ?></h1> 12 13 </body> 14 15 </html>
- Nota: Notar que sempre debemos deixar a lo menos un espazo en branco entre <?php e o inicio de código....
- En xeral, as liñas en PHP rematan con punto e coma.
- Podemos engadir sangrías, retornos de carro,...que o intérprete non os terá en conta. Polo tanto podemos dar un formato lexible ao código PHP.
Exemplo de boa programación:
1 <html> 2 <head> 3 <meta charset="UTF-8"> 4 <title></title> 5 </head> 6 <body> 7 <?php 8 9 $valor = 6; 10 11 if ($valor>5) { 12 echo "Valor vale máis de 5..."; 13 } 14 else { 15 echo "Valor vale menos de 5..."; 16 } 17 18 ?> 19 </body> 20 </html>
Exemplo de mala programación:
1 <html> 2 <head> 3 <meta charset="UTF-8"> 4 <title></title> 5 </head> 6 <body> 7 <?php 8 9 $valor = 6; 10 11 if ($valor>5) { 12 echo "Valor vale máis de 5..."; 13 } 14 else { 15 echo "Valor vale menos de 5..."; 16 } 17 18 ?> 19 </body> 20 </html>
- É importante ter en conta que se a páxina web cumpre un determinado estándar debemos asegurarnos que o código HTML que xeran as liñas PHP tamén deben cumprilo.
- Un sitio para validar páxinas web: https://validator.w3.org/#validate_by_uri+with_options
- Por exemplo:
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3 <html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"> 4 <head> 5 <meta charset="UTF-8"> 6 <title></title> 7 </head> 8 <body> 9 <?php 10 11 echo "<h1 id=cabecera>Isto é unha cabeceira h1</h1>" 12 13 ?> 14 </body> 15 </html>
- Este código produce esta saída HTML:
1 <html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"> 2 <head> 3 <title></title> 4 </head> 5 <body> 6 <h1 id=cabeceira>Isto é unha cabeceira h1</h1> 7 </body> 8 </html>
- Se levamos este código á páxina de validación veremos que non cumpre o stándard XHTML, xa que o id da etiqueta h1 non está entrecomillado.
Comentarios
- Podemos poñer comentarios de liña ou comentarios de bloque.
- En PHP é moi importante (como en todas as linguaxes de programación) comentar adecuadamente as variables e os bloques de código para ter un adecuado mantemento posterior.
- Exemplo de código:
1 <?php 2 $var = "Isto é unha variable de cadea"; // Isto é unha variable de cadea 3 4 /* Imos imprimir o valor dunha variable 5 O facemos para probar como vai :) 6 */ 7 echo $var; 8 ?>
- Máis información no seguinte enlace: http://php.net/manual/es/language.basic-syntax.comments.php
Detectar erros
- Cando programedes en PHP e teñades algún error de sintaxe, o páxina pode quedar en branco e sen saber que é o que está a pasar.
- Se vos pasa iso ou se non sabedes onde está o erro, podedes:
- Mirar o arquivo /var/log/apache2/error.log (ao final de todo)
- Poñer temporalmente dentro da páxina php o seguinte código, arriba de todo:
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); // Non debería ser necesario xa que amosa posibles erros de configuración no php.ini ou erros antes da execución do script, pero podemos poñelo por se acaso. error_reporting(E_ALL);
- Unha vez atopades o erro, lembrar quitar dichas liñas da páxina.
-- Ángel D. Fernández González -- (2023).