SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
1
Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com
CURSO PRACTICO DE PHP
2
Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com
Titulo de la obra:
Curso Inicial Practico de PHP
Autor/a:
Lucia Castillo Alias
Colaboradores:
Jose Saez
3
Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com
CURSO PRACTICO DE PHP
Lucia Castillo.
4
Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com
Todos los nombres propios de programas, sistemas operativos, equipos, hardware, etc. Que
aparecen en este libro son marcas registradas de sus respectivas compañías u organizaciones.
Reservados todos los derechos. El contenido de esta obra esta protegido por la Ley, que
establece penas de prisión y/o multas, además de las correspondientes indemnizaciones por
daños y perjuicios, para quienes reprodujeren, plagiaren, distribuyeren o comunicaren
públicamente, en todo o en parte, una obra litería, artística o científica, o su transformación,
interpretación o ejecución artística fijada en cualquier tipo de soporte o comunicada a través de
cualquier medio, sin la preceptiva autorización.
Contacto comercial: formacion@aprendoencasa.com
Curso Inicial Practico de PHP 5
Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com
A mi familia, por comprender pacientemente mis largas horas de
trabajo delante de un ordenador.
El ignorante afirma, el sabio duda y reflexiona (Aristóteles)
6 Curso Inicial Practico de PHP
Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com
Conceptos básicos.............................................................................................................................................................. 9
Instalación para prácticas.............................................................................................................................................10
Instalación de WAMP.......................................................................................................................................................................10
Instalación de XAMPP......................................................................................................................................................................14
IDE para PHP......................................................................................................................................................................19
Introducción a PHP..........................................................................................................................................................23
Etiquetas en PHP ...............................................................................................................................................................................23
¡Hola Mundo! En PHP ......................................................................................................................................................................24
Variables, Constantes y Tipos......................................................................................................................................29
Tipos de variables..............................................................................................................................................................................29
Nombres de variables ......................................................................................................................................................................29
Asignación de variables ..................................................................................................................................................................30
Tipo Entero (Integer).......................................................................................................................................................................30
Tipo Coma Flotante (Double).......................................................................................................................................................32
Cadenas de caracteres (strings) ..................................................................................................................................................36
Boolean..................................................................................................................................................................................................37
NULL.......................................................................................................................................................................................................38
Constantes............................................................................................................................................................................................39
Constantes predefinidas..................................................................................................................................................................41
Arrays.....................................................................................................................................................................................................43
Operadores.........................................................................................................................................................................46
Operador de asignación..................................................................................................................................................................46
Operador unario................................................................................................................................................................................46
Operadores Aritméticos..................................................................................................................................................................47
Operadores de comparación.........................................................................................................................................................48
Operadores lógicos............................................................................................................................................................................50
Operador ternario.............................................................................................................................................................................51
Operadores bit a bit..........................................................................................................................................................................52
Operadores de asignación combinados....................................................................................................................................53
Operador de ejecución.....................................................................................................................................................................55
Operador de errores.........................................................................................................................................................................55
Estructuras de control....................................................................................................................................................57
Estructuras de elección...................................................................................................................................................................57
Estructura elección simple if .................................................................................................................................................57
Curso Inicial Practico de PHP 7
Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com
Estructura de elección múltipleswitch.............................................................................................................................60
Ejercicios para practicar..........................................................................................................................................................62
Bucles .....................................................................................................................................................................................................63
Bucle Condicional while..........................................................................................................................................................63
Bucle Condicional do-while...................................................................................................................................................65
Bucle Incondicional for............................................................................................................................................................66
Bucle Incondicional foreach..................................................................................................................................................68
Romper y continuar bucles: break, continue...............................................................................................................69
Ejercicios para practicar..........................................................................................................................................................70
Funciones............................................................................................................................................................................ 71
Funciones creadas por el programador ...................................................................................................................................71
Funciones con parámetros por referencia y valor ...............................................................................................................75
Funciones con parámetros variables.........................................................................................................................................76
Funciones con parámetros por defecto.............................................................................................................................77
Funciones con arrays como parámetros...........................................................................................................................78
Funciones sin parámetros que reciben parámetros....................................................................................................79
Funciones como variables..............................................................................................................................................................83
Funciones para cadenas de caracteres.....................................................................................................................................84
Longitud de una cadena strlen.............................................................................................................................................84
Posición de una subcadena en una cadena strpos,strrpos.....................................................................................85
Comparación de cadenas strcmp, strcasecmp ............................................................................................................86
Extracción de subcadena de una cadena strstr,substr.............................................................................................88
Quitar espacios en blanco ltrim, trim, chop..................................................................................................................89
Conversión mayúsculas, minúsculas, strtoupper, strtolower, ucfirst, ucwords.......................................91
Reemplazar cadenas str_replace, str_ireplace, substr_replace........................................................................92
Expresiones regulares...............................................................................................................................................................93
Funciones para arrays.....................................................................................................................................................................96
Contar elementos de un array, count................................................................................................................................96
Buscar elementos, in_array, array_search, array_key_exists ............................................................................97
Borrado de elementos unset, array_splice....................................................................................................................98
Desplazamientos en arrays next, prev, current, end, reset, key....................................................................100
Devolución e intercambio array_values, array_keys, array_reverse, array_flip ..................................102
Mezclar y ordenar array_shuffle, asort, arsort, ksort, krsort, sort, rsort................................................104
Funciones para pilas con arrays................................................................................................................................................107
Información con formularios....................................................................................................................................109
Formularios en xhtml.....................................................................................................................................................................109
Elemento de formulario input...........................................................................................................................................110
Cuadro de texto ...................................................................................................................................................................110
Botones tipo radio..............................................................................................................................................................112
Casillas de chequeo............................................................................................................................................................113
Cuadro de texto password..............................................................................................................................................114
Listas desplegables..................................................................................................................................................................116
Area de texto ..............................................................................................................................................................................118
Botones de envio y reset.......................................................................................................................................................120
Adjuntar fichero........................................................................................................................................................................122
8 Curso Inicial Practico de PHP
Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com
Paso de información con formularios .....................................................................................................................................123
Envío utilizando variables a través de URL con GET................................................................................................123
Envío utilizando variables a través de URL con POST.............................................................................................127
Envío utilizando Sesiones.....................................................................................................................................................129
Envío utilizando Cookies ......................................................................................................................................................132
Ficheros ............................................................................................................................................................................ 135
Apertura de ficheros o archivos.................................................................................................................................................135
Escritura en ficheros o archivos de cadenas de caracteres ............................................................................................138
Lectura en ficheros o archivos de cadenas de caracteres................................................................................................141
Lectura y escritura de archivos completos............................................................................................................................146
Leer y grabar archivos CSV/TSV...............................................................................................................................................151
Accesos aleatorios en ficheros o archivos ..............................................................................................................................157
Funciones con archivos y directorios.......................................................................................................................................159
Cambiar y comprobar permisos sobre archivos o directorios ............................................................................159
Comprobar ficheros ................................................................................................................................................................160
Curso Inicial Practico de PHP 9
Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com
Conceptos básicos
El lenguaje PHP está incluido dentro de los denominados lenguajes interpretados,
especialmente indicado para la creación y desarrollo web. Normalmente se ejecuta en un
servidor web recibiendo este código php y generando como resultado de salida código web.
Puede ser instalado en la mayoría de servidores sin ningún tipo de problemas o coste y
en casi todos los sistemas operativos y plataformas. Se encuentra instalado en más de 20
millones de sitios web y en más de un millón de servidores. La versión más reciente del
programa es la 5.3.2, aunque depende del servidor se pueden encontrar distintas versiones.
Es un lenguaje que guarda gran parecido en su estructura con otros lenguajes de
programación, como pueden ser C y Perl, debido a esto a personas con conocimientos en estos
lenguajes la curva de aprendizaje de php es sorprendente.
El modo de funcionamiento del lenguaje es recibir una petición del equipo cliente al
equipo servidor, el servidor ejecuta la petición llamando al intérprete de PHP, el cual realiza la
interpretación del código y genera la información solicitada enviándola al servidor, el cual lo
envía al cliente.
Entre sus cualidades una a destacar es la gran cantidad de bases de datos que puede
manejar, entre ellas encontramos MySQL, PostGres, Oracle, ODBC, DB2, Microsoft SQL Server,
Firebird, etc.
Entre las ventajas a destacar se pueden encontrar las siguientes:
 Es un lenguaje multiplataforma.
 Orientado al desarrollo de aplicaciones web dinámicas con acceso a bases de datos.
 El código fuente es invisible al navegador, ya que el servidor se encarga de ejecutar el
código y enviar como resultado HTML.
 Capacidad de conexión con los distintos motores de bases de datos.
 Expansión mediante módulos.
 Amplia documentación.
 Es libre.
 Permite programación orientada a objetos.
 Etc.

Más contenido relacionado

Destacado

Aux fondements de la Grèce : cités, mythes, panhellénisme
Aux fondements de la Grèce  : cités, mythes, panhellénismeAux fondements de la Grèce  : cités, mythes, panhellénisme
Aux fondements de la Grèce : cités, mythes, panhellénisme
mlaugel
 
Ideas de trading semanales de Cortal Consors 18 de abril
Ideas de trading semanales de Cortal Consors 18 de abrilIdeas de trading semanales de Cortal Consors 18 de abril
Ideas de trading semanales de Cortal Consors 18 de abril
Salainversion
 
Pourquoi se syndiquer aujourd’hui
Pourquoi se syndiquer aujourd’hui  Pourquoi se syndiquer aujourd’hui
Pourquoi se syndiquer aujourd’hui
Réseau Pro Santé
 
Practica 2
Practica 2Practica 2
Practica 2
Yoli
 
Metacognición en la educación
Metacognición en la educaciónMetacognición en la educación
Metacognición en la educación
Yasmin barrios
 
Sitios donde me gustaría viajar
Sitios donde me gustaría viajarSitios donde me gustaría viajar
Sitios donde me gustaría viajar
beamoce
 

Destacado (19)

Ganoexcel
GanoexcelGanoexcel
Ganoexcel
 
Questionnaire
Questionnaire Questionnaire
Questionnaire
 
1 rappel d'excel
1 rappel d'excel1 rappel d'excel
1 rappel d'excel
 
Aux fondements de la Grèce : cités, mythes, panhellénisme
Aux fondements de la Grèce  : cités, mythes, panhellénismeAux fondements de la Grèce  : cités, mythes, panhellénisme
Aux fondements de la Grèce : cités, mythes, panhellénisme
 
iBeacon vs NFC - Etude de cas - Antoine Olbrechts - Café Numérique Liège
iBeacon vs NFC - Etude de cas - Antoine Olbrechts - Café Numérique LiègeiBeacon vs NFC - Etude de cas - Antoine Olbrechts - Café Numérique Liège
iBeacon vs NFC - Etude de cas - Antoine Olbrechts - Café Numérique Liège
 
Una Visita A Granada La Alhambra 4 El Bosque
Una Visita A Granada  La Alhambra 4 El BosqueUna Visita A Granada  La Alhambra 4 El Bosque
Una Visita A Granada La Alhambra 4 El Bosque
 
Ideas de trading semanales de Cortal Consors 18 de abril
Ideas de trading semanales de Cortal Consors 18 de abrilIdeas de trading semanales de Cortal Consors 18 de abril
Ideas de trading semanales de Cortal Consors 18 de abril
 
Informe final a.cano m. huaraz- 680
Informe final a.cano m. huaraz- 680Informe final a.cano m. huaraz- 680
Informe final a.cano m. huaraz- 680
 
[old] la première présentation de Web Report en 1998
[old] la première présentation de Web Report en 1998[old] la première présentation de Web Report en 1998
[old] la première présentation de Web Report en 1998
 
Pourquoi se syndiquer aujourd’hui
Pourquoi se syndiquer aujourd’hui  Pourquoi se syndiquer aujourd’hui
Pourquoi se syndiquer aujourd’hui
 
Enluminures des livres d'heures de paris
Enluminures des livres d'heures de parisEnluminures des livres d'heures de paris
Enluminures des livres d'heures de paris
 
Practica 2
Practica 2Practica 2
Practica 2
 
Presentcion Carnavales
Presentcion CarnavalesPresentcion Carnavales
Presentcion Carnavales
 
Informe final a.cano m. huaraz- 681
Informe final a.cano m. huaraz- 681Informe final a.cano m. huaraz- 681
Informe final a.cano m. huaraz- 681
 
LABanque, vision d'une nouvelle monnaie pour les makers
LABanque, vision d'une nouvelle monnaie pour les makersLABanque, vision d'une nouvelle monnaie pour les makers
LABanque, vision d'une nouvelle monnaie pour les makers
 
Mktsocialmedia2
Mktsocialmedia2Mktsocialmedia2
Mktsocialmedia2
 
Metacognición en la educación
Metacognición en la educaciónMetacognición en la educación
Metacognición en la educación
 
Sitios donde me gustaría viajar
Sitios donde me gustaría viajarSitios donde me gustaría viajar
Sitios donde me gustaría viajar
 
Estrategia Semanal de Cortal Consors
Estrategia Semanal de Cortal ConsorsEstrategia Semanal de Cortal Consors
Estrategia Semanal de Cortal Consors
 

Similar a Phpi conceptos

05 Introduccion A Linux. Gestion De Archivos
05 Introduccion A Linux. Gestion De Archivos05 Introduccion A Linux. Gestion De Archivos
05 Introduccion A Linux. Gestion De Archivos
José M. Padilla
 
Cap05.Introducción a Linux Gestión de archivos
Cap05.Introducción a Linux Gestión de archivosCap05.Introducción a Linux Gestión de archivos
Cap05.Introducción a Linux Gestión de archivos
Avel·lí
 
Proyecto: Seguridad en redes informáticas
Proyecto: Seguridad en redes informáticasProyecto: Seguridad en redes informáticas
Proyecto: Seguridad en redes informáticas
Francesc Perez
 
Proyecyo final de analisis estructurado
Proyecyo final de analisis estructuradoProyecyo final de analisis estructurado
Proyecyo final de analisis estructurado
Juan Jose Flores
 
aplicando el metodo de pacieUso de la informatica
aplicando el metodo de pacieUso de la informaticaaplicando el metodo de pacieUso de la informatica
aplicando el metodo de pacieUso de la informatica
RosannyJimenezReyes
 
Informe final practica pre_ii_francisco_flores_v6
Informe final practica pre_ii_francisco_flores_v6Informe final practica pre_ii_francisco_flores_v6
Informe final practica pre_ii_francisco_flores_v6
Francisco Flores Murrieta
 

Similar a Phpi conceptos (20)

05 Introduccion A Linux. Gestion De Archivos
05 Introduccion A Linux. Gestion De Archivos05 Introduccion A Linux. Gestion De Archivos
05 Introduccion A Linux. Gestion De Archivos
 
Cap05.Introducción a Linux Gestión de archivos
Cap05.Introducción a Linux Gestión de archivosCap05.Introducción a Linux Gestión de archivos
Cap05.Introducción a Linux Gestión de archivos
 
Alvarez-Ruffrán-Jorge-Enrique.pdf
Alvarez-Ruffrán-Jorge-Enrique.pdfAlvarez-Ruffrán-Jorge-Enrique.pdf
Alvarez-Ruffrán-Jorge-Enrique.pdf
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
 
Proyecto: Seguridad en redes informáticas
Proyecto: Seguridad en redes informáticasProyecto: Seguridad en redes informáticas
Proyecto: Seguridad en redes informáticas
 
Clei 4 clase de repaso sabatina rmb
Clei 4 clase de repaso sabatina rmbClei 4 clase de repaso sabatina rmb
Clei 4 clase de repaso sabatina rmb
 
Proyecto academia
Proyecto academiaProyecto academia
Proyecto academia
 
Proyecyo final de analisis estructurado
Proyecyo final de analisis estructuradoProyecyo final de analisis estructurado
Proyecyo final de analisis estructurado
 
Presentacion curso slae
Presentacion curso slaePresentacion curso slae
Presentacion curso slae
 
Presentacion Curso S L A E
Presentacion Curso  S L A EPresentacion Curso  S L A E
Presentacion Curso S L A E
 
Clei 5 clase de repaso sabatina rmb
Clei 5 clase de repaso sabatina rmbClei 5 clase de repaso sabatina rmb
Clei 5 clase de repaso sabatina rmb
 
aplicando el metodo de pacieUso de la informatica
aplicando el metodo de pacieUso de la informaticaaplicando el metodo de pacieUso de la informatica
aplicando el metodo de pacieUso de la informatica
 
Exposicion informe de practicas finales
Exposicion informe de practicas finalesExposicion informe de practicas finales
Exposicion informe de practicas finales
 
Practica#1 t
Practica#1 tPractica#1 t
Practica#1 t
 
Crispin ,gisele .tp. word, internet.
Crispin ,gisele .tp. word, internet.Crispin ,gisele .tp. word, internet.
Crispin ,gisele .tp. word, internet.
 
Sobrevivir con Software Libre después del FLISoL
Sobrevivir con Software Libre después del FLISoL Sobrevivir con Software Libre después del FLISoL
Sobrevivir con Software Libre después del FLISoL
 
05 identificacion de sistemas
05 identificacion de sistemas05 identificacion de sistemas
05 identificacion de sistemas
 
Informe final practica pre_ii_francisco_flores_v6
Informe final practica pre_ii_francisco_flores_v6Informe final practica pre_ii_francisco_flores_v6
Informe final practica pre_ii_francisco_flores_v6
 
Herramientasinteractivas
HerramientasinteractivasHerramientasinteractivas
Herramientasinteractivas
 
Sistema.o. celinda
Sistema.o.   celindaSistema.o.   celinda
Sistema.o. celinda
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (14)

infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Generaciones de las Computadoras..pdf...
Generaciones de las Computadoras..pdf...Generaciones de las Computadoras..pdf...
Generaciones de las Computadoras..pdf...
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 

Phpi conceptos

  • 1. 1 Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com CURSO PRACTICO DE PHP
  • 2. 2 Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com Titulo de la obra: Curso Inicial Practico de PHP Autor/a: Lucia Castillo Alias Colaboradores: Jose Saez
  • 3. 3 Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com CURSO PRACTICO DE PHP Lucia Castillo.
  • 4. 4 Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com Todos los nombres propios de programas, sistemas operativos, equipos, hardware, etc. Que aparecen en este libro son marcas registradas de sus respectivas compañías u organizaciones. Reservados todos los derechos. El contenido de esta obra esta protegido por la Ley, que establece penas de prisión y/o multas, además de las correspondientes indemnizaciones por daños y perjuicios, para quienes reprodujeren, plagiaren, distribuyeren o comunicaren públicamente, en todo o en parte, una obra litería, artística o científica, o su transformación, interpretación o ejecución artística fijada en cualquier tipo de soporte o comunicada a través de cualquier medio, sin la preceptiva autorización. Contacto comercial: formacion@aprendoencasa.com
  • 5. Curso Inicial Practico de PHP 5 Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com A mi familia, por comprender pacientemente mis largas horas de trabajo delante de un ordenador. El ignorante afirma, el sabio duda y reflexiona (Aristóteles)
  • 6. 6 Curso Inicial Practico de PHP Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com Conceptos básicos.............................................................................................................................................................. 9 Instalación para prácticas.............................................................................................................................................10 Instalación de WAMP.......................................................................................................................................................................10 Instalación de XAMPP......................................................................................................................................................................14 IDE para PHP......................................................................................................................................................................19 Introducción a PHP..........................................................................................................................................................23 Etiquetas en PHP ...............................................................................................................................................................................23 ¡Hola Mundo! En PHP ......................................................................................................................................................................24 Variables, Constantes y Tipos......................................................................................................................................29 Tipos de variables..............................................................................................................................................................................29 Nombres de variables ......................................................................................................................................................................29 Asignación de variables ..................................................................................................................................................................30 Tipo Entero (Integer).......................................................................................................................................................................30 Tipo Coma Flotante (Double).......................................................................................................................................................32 Cadenas de caracteres (strings) ..................................................................................................................................................36 Boolean..................................................................................................................................................................................................37 NULL.......................................................................................................................................................................................................38 Constantes............................................................................................................................................................................................39 Constantes predefinidas..................................................................................................................................................................41 Arrays.....................................................................................................................................................................................................43 Operadores.........................................................................................................................................................................46 Operador de asignación..................................................................................................................................................................46 Operador unario................................................................................................................................................................................46 Operadores Aritméticos..................................................................................................................................................................47 Operadores de comparación.........................................................................................................................................................48 Operadores lógicos............................................................................................................................................................................50 Operador ternario.............................................................................................................................................................................51 Operadores bit a bit..........................................................................................................................................................................52 Operadores de asignación combinados....................................................................................................................................53 Operador de ejecución.....................................................................................................................................................................55 Operador de errores.........................................................................................................................................................................55 Estructuras de control....................................................................................................................................................57 Estructuras de elección...................................................................................................................................................................57 Estructura elección simple if .................................................................................................................................................57
  • 7. Curso Inicial Practico de PHP 7 Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com Estructura de elección múltipleswitch.............................................................................................................................60 Ejercicios para practicar..........................................................................................................................................................62 Bucles .....................................................................................................................................................................................................63 Bucle Condicional while..........................................................................................................................................................63 Bucle Condicional do-while...................................................................................................................................................65 Bucle Incondicional for............................................................................................................................................................66 Bucle Incondicional foreach..................................................................................................................................................68 Romper y continuar bucles: break, continue...............................................................................................................69 Ejercicios para practicar..........................................................................................................................................................70 Funciones............................................................................................................................................................................ 71 Funciones creadas por el programador ...................................................................................................................................71 Funciones con parámetros por referencia y valor ...............................................................................................................75 Funciones con parámetros variables.........................................................................................................................................76 Funciones con parámetros por defecto.............................................................................................................................77 Funciones con arrays como parámetros...........................................................................................................................78 Funciones sin parámetros que reciben parámetros....................................................................................................79 Funciones como variables..............................................................................................................................................................83 Funciones para cadenas de caracteres.....................................................................................................................................84 Longitud de una cadena strlen.............................................................................................................................................84 Posición de una subcadena en una cadena strpos,strrpos.....................................................................................85 Comparación de cadenas strcmp, strcasecmp ............................................................................................................86 Extracción de subcadena de una cadena strstr,substr.............................................................................................88 Quitar espacios en blanco ltrim, trim, chop..................................................................................................................89 Conversión mayúsculas, minúsculas, strtoupper, strtolower, ucfirst, ucwords.......................................91 Reemplazar cadenas str_replace, str_ireplace, substr_replace........................................................................92 Expresiones regulares...............................................................................................................................................................93 Funciones para arrays.....................................................................................................................................................................96 Contar elementos de un array, count................................................................................................................................96 Buscar elementos, in_array, array_search, array_key_exists ............................................................................97 Borrado de elementos unset, array_splice....................................................................................................................98 Desplazamientos en arrays next, prev, current, end, reset, key....................................................................100 Devolución e intercambio array_values, array_keys, array_reverse, array_flip ..................................102 Mezclar y ordenar array_shuffle, asort, arsort, ksort, krsort, sort, rsort................................................104 Funciones para pilas con arrays................................................................................................................................................107 Información con formularios....................................................................................................................................109 Formularios en xhtml.....................................................................................................................................................................109 Elemento de formulario input...........................................................................................................................................110 Cuadro de texto ...................................................................................................................................................................110 Botones tipo radio..............................................................................................................................................................112 Casillas de chequeo............................................................................................................................................................113 Cuadro de texto password..............................................................................................................................................114 Listas desplegables..................................................................................................................................................................116 Area de texto ..............................................................................................................................................................................118 Botones de envio y reset.......................................................................................................................................................120 Adjuntar fichero........................................................................................................................................................................122
  • 8. 8 Curso Inicial Practico de PHP Centro de estudios en internet – Aprendo en casa www.aprendoencasa.com Paso de información con formularios .....................................................................................................................................123 Envío utilizando variables a través de URL con GET................................................................................................123 Envío utilizando variables a través de URL con POST.............................................................................................127 Envío utilizando Sesiones.....................................................................................................................................................129 Envío utilizando Cookies ......................................................................................................................................................132 Ficheros ............................................................................................................................................................................ 135 Apertura de ficheros o archivos.................................................................................................................................................135 Escritura en ficheros o archivos de cadenas de caracteres ............................................................................................138 Lectura en ficheros o archivos de cadenas de caracteres................................................................................................141 Lectura y escritura de archivos completos............................................................................................................................146 Leer y grabar archivos CSV/TSV...............................................................................................................................................151 Accesos aleatorios en ficheros o archivos ..............................................................................................................................157 Funciones con archivos y directorios.......................................................................................................................................159 Cambiar y comprobar permisos sobre archivos o directorios ............................................................................159 Comprobar ficheros ................................................................................................................................................................160
  • 9. Curso Inicial Practico de PHP 9 Centro de estudios en internet – Aprendo en casa teleformacion.aprendoencasa.com Conceptos básicos El lenguaje PHP está incluido dentro de los denominados lenguajes interpretados, especialmente indicado para la creación y desarrollo web. Normalmente se ejecuta en un servidor web recibiendo este código php y generando como resultado de salida código web. Puede ser instalado en la mayoría de servidores sin ningún tipo de problemas o coste y en casi todos los sistemas operativos y plataformas. Se encuentra instalado en más de 20 millones de sitios web y en más de un millón de servidores. La versión más reciente del programa es la 5.3.2, aunque depende del servidor se pueden encontrar distintas versiones. Es un lenguaje que guarda gran parecido en su estructura con otros lenguajes de programación, como pueden ser C y Perl, debido a esto a personas con conocimientos en estos lenguajes la curva de aprendizaje de php es sorprendente. El modo de funcionamiento del lenguaje es recibir una petición del equipo cliente al equipo servidor, el servidor ejecuta la petición llamando al intérprete de PHP, el cual realiza la interpretación del código y genera la información solicitada enviándola al servidor, el cual lo envía al cliente. Entre sus cualidades una a destacar es la gran cantidad de bases de datos que puede manejar, entre ellas encontramos MySQL, PostGres, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird, etc. Entre las ventajas a destacar se pueden encontrar las siguientes:  Es un lenguaje multiplataforma.  Orientado al desarrollo de aplicaciones web dinámicas con acceso a bases de datos.  El código fuente es invisible al navegador, ya que el servidor se encarga de ejecutar el código y enviar como resultado HTML.  Capacidad de conexión con los distintos motores de bases de datos.  Expansión mediante módulos.  Amplia documentación.  Es libre.  Permite programación orientada a objetos.  Etc.