Diferencia entre revisiones de «Usuario:ManuelRomero/php/introduccion»
De WikiEducator
< Usuario:ManuelRomero | php
(6 revisiones intermedias por el mismo usuario no mostrado) | |||
Línea 71: | Línea 71: | ||
<hr/> | <hr/> | ||
[[Imagen:codigoPHP.png|center|900px]] | [[Imagen:codigoPHP.png|center|900px]] | ||
+ | *Se ejecuta como si fuera un solo programa | ||
</div> | </div> | ||
Línea 77: | Línea 78: | ||
*Escribiendolo en un fichero aparte | *Escribiendolo en un fichero aparte | ||
**incluimos el fichero explícitamente | **incluimos el fichero explícitamente | ||
− | < | + | <source lang=php> |
include('ruta/nobrefichero'); | include('ruta/nobrefichero'); | ||
require('ruta/nobrefichero'); | require('ruta/nobrefichero'); | ||
Línea 88: | Línea 89: | ||
{{Recursos de la Web| | {{Recursos de la Web| | ||
*[http://php.net/manual/es/ php] página oficial en español LO MEJOR!!!! | *[http://php.net/manual/es/ php] página oficial en español LO MEJOR!!!! | ||
+ | *http://php.net/manual/es/ | ||
*<!-- MRM incluir en el otro documento http://php.net/manual/es/ini.core.php --> | *<!-- MRM incluir en el otro documento http://php.net/manual/es/ini.core.php --> | ||
Línea 93: | Línea 95: | ||
</div> | </div> | ||
+ | <div class="slide"> | ||
===Planteando un lenguaje de programación=== | ===Planteando un lenguaje de programación=== | ||
;Lexicos | ;Lexicos | ||
Línea 100: | Línea 103: | ||
Reglas de construcción | Reglas de construcción | ||
Son las ya conocidas, pero veremos como se construyen las expresiones | Son las ya conocidas, pero veremos como se construyen las expresiones | ||
+ | </div> | ||
+ | |||
+ | <div class="slide"> | ||
;Semántica | ;Semántica | ||
Habla del significado | Habla del significado | ||
Estudiaremos alguna peculiaridad como el hecho de que php es un lenguaje '''''muy orientado a expresiones''''' | Estudiaremos alguna peculiaridad como el hecho de que php es un lenguaje '''''muy orientado a expresiones''''' | ||
</div> | </div> | ||
+ | |||
<div class="slide"> | <div class="slide"> | ||
===Instrucciones en un lenguaje de programacion=== | ===Instrucciones en un lenguaje de programacion=== | ||
− | + | #Inicio Fin de bloque | |
− | + | #Declaraciones (variables, constantes, funciones, clases, objetos, ...) | |
− | + | #Asignacion | |
− | + | #Instrucion/funcion de leer del teclado, escribir por pantalla | |
− | + | #Invocación (llamada a función o método) | |
− | + | #Estructura de control (selectiva, iterativa) | |
</div> | </div> | ||
+ | |||
<div class="slide"> | <div class="slide"> | ||
;Separando instrucciones | ;Separando instrucciones | ||
− | *Para separar una instrucción de otra usaremos ''''';''''' | + | *Para separar una instrucción de otra usaremos ''''';''''' (punto y coma) |
*Su uso es obligatorio a execepción de la última instrucción que se puede obviar | *Su uso es obligatorio a execepción de la última instrucción que se puede obviar | ||
+ | *Esto es por que el fin de código php '''''?>''''' implica esta instrucción | ||
*Nosotros lo usaremos siempre | *Nosotros lo usaremos siempre | ||
− | + | ;Instruccion de inicio fin de bloque | |
− | + | ||
− | + | ||
<source lang = php> | <source lang = php> | ||
{ //Instrucción de inicio de bloque | { //Instrucción de inicio de bloque | ||
Línea 128: | Línea 135: | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
− | ===Declaraciones | + | ===Declaraciones=== |
− | + | #De variables | |
+ | #De constantes | ||
(Luego veremos funciones y en otro tema clases y objetos) | (Luego veremos funciones y en otro tema clases y objetos) | ||
{{Pregunta| | {{Pregunta| | ||
Línea 149: | Línea 157: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
− | ;PHP: Tipado dinámico | + | ;PHP: '''''Tipado dinámico'''' |
− | *Una características semántica muy muy importante de php | + | *Una características semántica muy, muy importante de php |
{{Puntos clave|PHP es un lenguaje fuertemente tipado}} | {{Puntos clave|PHP es un lenguaje fuertemente tipado}} | ||
*Los lenguajes de programación pueden ser mas o menos exigentes en cuanto a la declaración de los tipos de las variables para poder ser usados durante la ejecución de un programa. | *Los lenguajes de programación pueden ser mas o menos exigentes en cuanto a la declaración de los tipos de las variables para poder ser usados durante la ejecución de un programa. | ||
+ | </div> | ||
+ | <div class="slide"> | ||
+ | ;tipado dinámico | ||
*Lenguajes fuertemente tipos o débilmente tipados | *Lenguajes fuertemente tipos o débilmente tipados | ||
*Esto tiene que ver con el hecho de que cada variable en un momento dado tiene un tipo, y lo podemos saber | *Esto tiene que ver con el hecho de que cada variable en un momento dado tiene un tipo, y lo podemos saber | ||
Línea 161: | Línea 172: | ||
;Tipado dinámico | ;Tipado dinámico | ||
*Php no es estricto en el tipo de dato de una variable en cuanto que éste puede cambiar durante su vida. | *Php no es estricto en el tipo de dato de una variable en cuanto que éste puede cambiar durante su vida. | ||
− | *En este sentido php es un lenguaje de '''''tipado dinámico'''', el tipo de la variable depende del valor que tiene en un momento dado o de los operadores que lo afecten. | + | *En este sentido php es un lenguaje de '''''tipado dinámico''''', el tipo de la variable depende del valor que tiene en un momento dado o de los operadores que lo afecten. |
{{Puntos clave|PHP es un lenguaje de tipado dinámico}} | {{Puntos clave|PHP es un lenguaje de tipado dinámico}} | ||
</div> | </div> | ||
Línea 172: | Línea 183: | ||
*El identificador de php tiene que empezar por el signo '''''$''''' | *El identificador de php tiene que empezar por el signo '''''$''''' | ||
*En php las variablas se prepresentas con el signo '''''$''''' seguido de un caracter de subrayado o una letra y luego letras, números y caracteres de subrayado en cualquier orden y número. | *En php las variablas se prepresentas con el signo '''''$''''' seguido de un caracter de subrayado o una letra y luego letras, números y caracteres de subrayado en cualquier orden y número. | ||
− | + | </div> | |
+ | <div class="slide"> | ||
+ | ;PHP y variables | ||
+ | {{Resumen| | ||
+ | #Php fuertemente tipado | ||
+ | #Php tipado dinámico | ||
+ | #Php no es estricto en la declaracion de variables (no hay que declararlas antes de usarlas) | ||
+ | }} | ||
</div> | </div> | ||
Línea 178: | Línea 196: | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
;identificador de variables | ;identificador de variables | ||
− | + | {{Nota|identificador = $[_|a.zA..Z][_|a..zA..Z0..9]*}} | |
<source lang=php> | <source lang=php> | ||
<?php | <?php | ||
Línea 190: | Línea 208: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
− | + | ;Sensitive case? | |
*El lenguaje es sensible a mayúsculas y minúsculas | *El lenguaje es sensible a mayúsculas y minúsculas | ||
**En los identificadores de variables ($edad != $Edad) | **En los identificadores de variables ($edad != $Edad) | ||
Línea 199: | Línea 217: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
+ | |||
===Valores y tipos de datos=== | ===Valores y tipos de datos=== | ||
http://php.net/manual/es/language.types.intro.php | http://php.net/manual/es/language.types.intro.php | ||
Línea 209: | Línea 228: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
− | tipos básicos | + | ;tipos básicos |
− | + | #'''entero '''''integer''''' ''' | |
*Posible notación decimal/octal/hexadecimal | *Posible notación decimal/octal/hexadecimal | ||
decimal [0..9]+ | decimal [0..9]+ | ||
Línea 232: | Línea 251: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
+ | ;integer | ||
*Al imprimirlos con print los veré con valor decimal | *Al imprimirlos con print los veré con valor decimal | ||
*Para verlos en otras base hay que usar printf o format o utilizar las conversiones dechex o dechex o octdec, .... que veremos a continuación | *Para verlos en otras base hay que usar printf o format o utilizar las conversiones dechex o dechex o octdec, .... que veremos a continuación | ||
Línea 298: | Línea 318: | ||
#Este es otro modo de hacer comentarios tipo script de linux | #Este es otro modo de hacer comentarios tipo script de linux | ||
?> | ?> | ||
+ | </source> | ||
+ | *Este código nos visualizará | ||
+ | Valor de la variable 16 | ||
+ | </div> | ||
+ | |||
+ | <div class="slide"> | ||
+ | |||
</source> | </source> | ||
</div> | </div> | ||
Línea 310: | Línea 337: | ||
$a=5; | $a=5; | ||
$echo'la instruccion de arriba es una y esta otra"; | $echo'la instruccion de arriba es una y esta otra"; | ||
− | $echo'esta instrucción puede no llevar ; por ir antes de fin de etiqueta php, pero mejor ponerla" | + | $echo'esta instrucción puede no llevar ; |
+ | por ir antes de fin de etiqueta php, pero mejor ponerla" | ||
?> | ?> | ||
</source> | </source> | ||
Línea 317: | Línea 345: | ||
<div class="slide"> | <div class="slide"> | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{{Actividad| | {{Actividad| | ||
*Probamos a hacer programas sencillos donde asignamos y visualizamos valores | *Probamos a hacer programas sencillos donde asignamos y visualizamos valores | ||
Línea 335: | Línea 357: | ||
<div class="slide"> | <div class="slide"> | ||
===Valor de variable=== | ===Valor de variable=== | ||
− | * | + | *A una variable le puedo asignar un valor en cualquier momento |
*El tipo de la variable depende del valor que tiene | *El tipo de la variable depende del valor que tiene | ||
*Hay una serie de funciones del sistema relacionadas con los valores y las variables | *Hay una serie de funciones del sistema relacionadas con los valores y las variables | ||
Línea 343: | Línea 365: | ||
<!--4----------------------------------> | <!--4----------------------------------> | ||
====Funciones de php de tipos y valores==== | ====Funciones de php de tipos y valores==== | ||
+ | http://php.net/manual/es/ref.var.php | ||
*Existen una serie de funciones que son interesantes de conocer | *Existen una serie de funciones que son interesantes de conocer | ||
*Están relacionadas con los tipos de datos y valores | *Están relacionadas con los tipos de datos y valores | ||
Línea 398: | Línea 421: | ||
{{Actividad| | {{Actividad| | ||
Probamos las fuciones var_dump() que nos da información sobre el valor y el tipo}} | Probamos las fuciones var_dump() que nos da información sobre el valor y el tipo}} | ||
+ | </div> | ||
+ | |||
+ | <div class="slide"> | ||
{{Actividad| | {{Actividad| | ||
Usando la función xxxyyy donde xxx e yyy será dec oct bin o hex para convertir el valor de un sistema numérico a otro}} | Usando la función xxxyyy donde xxx e yyy será dec oct bin o hex para convertir el valor de un sistema numérico a otro}} | ||
Línea 407: | Línea 433: | ||
{{Actividad| | {{Actividad| | ||
*Define las siguientes variables que se especifican en el código siguiente y verifica el resultado con empty() | *Define las siguientes variables que se especifican en el código siguiente y verifica el resultado con empty() | ||
− | + | ||
<source lang=php> | <source lang=php> | ||
$num=0; | $num=0; | ||
Línea 415: | Línea 441: | ||
$pregunta = FALSE; | $pregunta = FALSE; | ||
</source> | </source> | ||
− | + | }} | |
</div> | </div> | ||
Línea 434: | Línea 460: | ||
*son funciones donde xxx especificado en el último nombre, puede ser cualquiera de los tipos | *son funciones donde xxx especificado en el último nombre, puede ser cualquiera de los tipos | ||
[[Archivo:funciones_is-xxx.png]] | [[Archivo:funciones_is-xxx.png]] | ||
+ | </div> | ||
+ | |||
+ | <div class="slide"> | ||
+ | |||
*Todas ellas devuelve un booleano que indica si la variable, valor o expresion es o no de ese tipo, | *Todas ellas devuelve un booleano que indica si la variable, valor o expresion es o no de ese tipo, | ||
<source lang=php> | <source lang=php> | ||
Línea 577: | Línea 607: | ||
#Sólo puede aceptar un argumento | #Sólo puede aceptar un argumento | ||
#Devuelve un valor que representa si la sentencia ha tenido o no éxito | #Devuelve un valor que representa si la sentencia ha tenido o no éxito | ||
− | |||
− | |||
</div> | </div> | ||
− | |||
<div class="slide"> | <div class="slide"> | ||
− | + | *Para las siguientes actividades debes conocer las estructuras de control básicas. | |
{{Actividad| | {{Actividad| | ||
Haz un programa que sume los 100 primeros números}} | Haz un programa que sume los 100 primeros números}} | ||
Línea 599: | Línea 626: | ||
{{Actividad| | {{Actividad| | ||
*Haz un programa que a partir de precio hora y de número de horas calcule una nómina, teniendo en cuenta que: | *Haz un programa que a partir de precio hora y de número de horas calcule una nómina, teniendo en cuenta que: | ||
− | #mas de 40 horas son extras (1.5 el precio | + | #mas de 40 horas son extras (1.5 el precio base) |
#IRPF < 600E exento | #IRPF < 600E exento | ||
#Entre 600 y 800 5% | #Entre 600 y 800 5% |
Última revisión de 06:11 1 may 2023
_ Variables static
function contador() { static $a=0; $a++; // Cada vez que se ejecuta la función, se incrementa el valor de $a } </div> |