SlideShare uma empresa Scribd logo
1 de 43
Conociendo PHP Introducción a uno de los lenguajes de programación web más usados en Internet Antonio Kobashikawa Carrasco [email_address] @akobashikawa
Audiencia ,[object Object],[object Object]
¿Qué es PHP? Lenguaje de programación para generar páginas web
El ciclo web navegador servidor web solicitud respuesta 1 2 3 4 proceso presentación
respuesta web servidor web .html .php HTML HTML El contenido del documento .html es pasado tal cual a la respuesta HTML Un documento dinámico (como .php) es procesado para obtener HTML
respuesta web servidor web en el proceso, un documento dinámico puede involucrar diversos recursos base de datos email archivos gráficos etc
¿Por qué PHP? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conociendo PHP para empezar
instalando PHP PHP  + MySQL instalar PHP instalar Apache instalar  módulo PHP instalar MySQL configurar Apache configurar PHP configurar PHP En la instalación manual hay que bajar cada componente, instalarlo y configurarlo.
LAMP, WAMP, … ,[object Object],[object Object],[object Object],[object Object],A M P A M P A M P L W M
XAMPP ,[object Object],[object Object],[object Object]
Editores, IDEs ,[object Object],[object Object],[object Object]
Editores, IDEs ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Empezando El panel de control de XAMPP, desde donde podemos iniciar y detener sus servicios
Conociendo PHP lo básico
¡Hola Mundo! ,[object Object],[object Object],[object Object],[object Object],<?php echo '¡Hola Mundo!'; ?> hola_mundo.php
¡Hola Mundo! <?php echo '¡Hola Mundo!'; ?> hola_mundo.php htdocs
… ¡Hola Mundo! htdocs/index.php htdocs http://localhost/index.php htdocs/hola_mundo.php http://localhost/hola_mundo.php
… ¡Hola Mundo! unicode guardado como ASCII unicode guardado como UTF-8 En Notepad++ es fácil comprobar y cambiar el encode Si usamos unicode, tener cuidado de guardar el archivo en UTF-8 (sin BOM)
… ¡Hola Mundo! <?php echo '¡Hola Mundo!'; ?> ¡Hola Mundo! servidor web navegador http://localhost/hola_mundo.php .php HTML
… ¡Hola Mundo! ,[object Object],[object Object],<html> <body> <h1> <?php echo '¡Hola Mundo!';?> </h1> </body> </html> hola_mundo.php
… ¡Hola Mundo! <html> <body> <h1> ¡Hola Mundo! </h1> </body> </html>
Cuadrados <html> <body> <h1>Cuadrados</h1> <table border=&quot;1&quot;> <?php for ($i=1; $i<=10; $i++) { ?> <tr> <td> <?php echo $i;?> </td> <td> <?php echo $i*$i;?> </td> </tr> <?php } ?> </table> </body> </html> cuadrados.php
… Cuadrados <html> <body> <h1>Cuadrados</h1> <table border=&quot;1&quot;> <tr> <td> 1 </td> <td> 1 </td> </tr> <tr> <td> 2 </td> <td> 4 </td> </tr> … <tr> <td> 10 </td> <td> 100 </td> </tr> </table> </body> </html>
Conociendo PHP formularios
Hola Tú <html> <body> <form action=&quot;hola.php&quot; method=&quot;post&quot;> Nombre: <input type=&quot;text&quot; name=&quot;nombre&quot;/> <input type=&quot;submit&quot; value=&quot;OK&quot;/> </form> </body> </html> hola_form.php
… Hola Tú <html> <body> <h1> <?php echo '¡Hola '.$_POST['nombre'].'!';?> </h1> </body> </html> hola.php
… Hola Tú <?php echo '¡Hola ' .$_POST['nombre'] .'!'; ?> ¡Hola Antonio! servidor web navegador action=hola.php hola.php HTML nombre=Antonio <form>...</form> <form>...</form> http://localhost/hola_form.php hola_form.php
… Hola Tú <html> <body> <?php $nombre = isset($_POST['nombre'])?$_POST['nombre']:''; ?> <form action=&quot;hola_tu.php&quot; method=&quot;post&quot;> Nombre: <input type=&quot;text&quot; name=&quot;nombre&quot;  value=&quot; <?php echo $nombre;?> &quot;/> <input type=&quot;submit&quot; value=&quot;OK&quot;> </form> <?php if ($nombre) { echo '<h1>¡Hola '.$nombre.'!</h1>'; }?> </body> </html> hola_tu.php versión de una página
… Hola Tú <?php $nombre = ...; ?> <form>...</form> <?php if ($nombre) { echo '<h1>¡Hola ' .$nombre.'!</h1>'; } ?> ¡Hola Antonio! servidor web navegador action=hola_tu.php hola.php HTML nombre=Antonio <form>...</form> http://localhost/hola_tu.php
Conociendo PHP un poco más
Bloques básicos asignación decisión repetición $x   =  1+1; if  ($x>0) { ... } if  ($x>0) { ... }  else  { ... } switch  ($x) { case  1: ... break; ... default ... break; } for  ($i=0; $i<10; $i++) { ... } while  ($i<10) { ... } do  { ... }  while  ($i<10); ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Arrays ( [0]=>2 [1]=>3 [2]=>1 [3]=>'Hola' ) 'Hola' 2 3 1 'Hola' $x = 1; $a   =  array(2, 3, $x, 'Hola'); a[3] foreach  ($a as $item) { echo $item.'<br/>'; } foreach  ($a as $indice=>$item) { echo $indice.': '.$item.'<br/>'; } 0: 2 1: 3 2: 1 3: 'Hola'
Funciones function  hola_mundo() { echo '¡Hola Mundo!'; } function  hola($x) { echo '¡Hola '.$x.'!'; } hola_mundo(); hola('Mundo'); function  saludo($y) { return '¡Hola '.$y.'!'; } function  hola($x) { echo saludo($x); } hola('Mundo'); ¡Hola Mundo!
Clases class  Hola() { function saludo($y) { return '¡Hola '.$y.'!'; } function hola($x) { echo $this->saludo($x); } } $h = new Hola(); $h->hola('Mundo'); ¡Hola Mundo!
include echo '<h1>Conociendo PHP</h1>'; cabecera.php echo 'Hola Mundo'; _hola_mundo.php <html> <body> <?php include 'cabecera.php';?> <?php include '_hola_mundo.php';?> </body> </html> hola_mundo.php
require function hola() { return '¡Hola Mundo!'; } funciones.php echo hola(); _hola_mundo.php <html> <body> <?php require('funciones.php');?> <?php include '_hola_mundo.php';?> </body> </html> hola_mundo.php
include & require ,[object Object],[object Object],[object Object]
Frameworks ,[object Object],[object Object],[object Object],[object Object]
Frameworks ,[object Object],[object Object],[object Object],[object Object],[object Object]
Referencias ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conociendo PHP Introducción a uno de los lenguajes de programación web más usados en Internet Antonio Kobashikawa Carrasco [email_address] @akobashikawa
Gracias por su atención preguntas, comentarios

Mais conteúdo relacionado

Mais procurados (20)

Curso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPVCurso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPV
 
Manual basico de PHP
Manual basico de PHPManual basico de PHP
Manual basico de PHP
 
Manual De Php
Manual De PhpManual De Php
Manual De Php
 
Curso php y_my_sql
Curso php y_my_sqlCurso php y_my_sql
Curso php y_my_sql
 
Introducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGRIntroducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGR
 
Manual PHP 7
Manual PHP 7Manual PHP 7
Manual PHP 7
 
Curso php - capitulo 1 (introducción)
Curso php - capitulo 1 (introducción)Curso php - capitulo 1 (introducción)
Curso php - capitulo 1 (introducción)
 
Introducción a programación con PHP
Introducción a programación con PHPIntroducción a programación con PHP
Introducción a programación con PHP
 
Exposicion de php
Exposicion de phpExposicion de php
Exposicion de php
 
PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01
 
Variables y Bucles
Variables y BuclesVariables y Bucles
Variables y Bucles
 
Manual php completo by_ desarrolloweb
Manual php completo by_ desarrollowebManual php completo by_ desarrolloweb
Manual php completo by_ desarrolloweb
 
Php Basico
Php BasicoPhp Basico
Php Basico
 
Manual de php con ejercicios
Manual de php con ejerciciosManual de php con ejercicios
Manual de php con ejercicios
 
Php basico
Php basicoPhp basico
Php basico
 
Lenguaje de programacion php
Lenguaje de programacion   phpLenguaje de programacion   php
Lenguaje de programacion php
 
3 curso php
3 curso php3 curso php
3 curso php
 
Conceptos basicos php
Conceptos basicos phpConceptos basicos php
Conceptos basicos php
 
Sesion 1
Sesion 1Sesion 1
Sesion 1
 
Manual+php+básico
Manual+php+básicoManual+php+básico
Manual+php+básico
 

Destaque

Cuaderno de-ejercicios-y-practicas-php
Cuaderno de-ejercicios-y-practicas-phpCuaderno de-ejercicios-y-practicas-php
Cuaderno de-ejercicios-y-practicas-phplgcj1989
 
Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Ángel Acaymo M. G.
 
Introduccion a PHP
Introduccion a PHPIntroduccion a PHP
Introduccion a PHPFabio Fabre
 
Manual php5 basico
Manual php5 basicoManual php5 basico
Manual php5 basicoclaudicristy
 
Html5 y css3: Introducción y aplicación desde hoy
Html5 y css3: Introducción y aplicación desde hoyHtml5 y css3: Introducción y aplicación desde hoy
Html5 y css3: Introducción y aplicación desde hoyParadigma Digital
 
Introducción al Diseño web
Introducción al Diseño webIntroducción al Diseño web
Introducción al Diseño webciwmx
 
Users - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLUsers - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLAndrés Pizarro
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Juan Fede
 
Bloque academico- Metodología PACIE
Bloque academico- Metodología PACIEBloque academico- Metodología PACIE
Bloque academico- Metodología PACIEGiosianna Polleri
 
Estructurabasicaphp 130216112853-phpapp01
Estructurabasicaphp 130216112853-phpapp01Estructurabasicaphp 130216112853-phpapp01
Estructurabasicaphp 130216112853-phpapp01gama ortega
 
Curso php dia1
Curso php dia1Curso php dia1
Curso php dia1cognos_uie
 
Usando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPUsando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPDKR Visión SRL
 

Destaque (20)

Curso Php
Curso PhpCurso Php
Curso Php
 
Cuaderno de-ejercicios-y-practicas-php
Cuaderno de-ejercicios-y-practicas-phpCuaderno de-ejercicios-y-practicas-php
Cuaderno de-ejercicios-y-practicas-php
 
Manual de PHP Basico
Manual de PHP BasicoManual de PHP Basico
Manual de PHP Basico
 
Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.
 
Presentacion curso de php
Presentacion curso de phpPresentacion curso de php
Presentacion curso de php
 
Introduccion a PHP
Introduccion a PHPIntroduccion a PHP
Introduccion a PHP
 
Estructura Básica de PHP
Estructura Básica de PHPEstructura Básica de PHP
Estructura Básica de PHP
 
Manual php5 basico
Manual php5 basicoManual php5 basico
Manual php5 basico
 
Html5 y css3: Introducción y aplicación desde hoy
Html5 y css3: Introducción y aplicación desde hoyHtml5 y css3: Introducción y aplicación desde hoy
Html5 y css3: Introducción y aplicación desde hoy
 
Introducción al Diseño web
Introducción al Diseño webIntroducción al Diseño web
Introducción al Diseño web
 
Users - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLUsers - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQL
 
Introducción Php
Introducción PhpIntroducción Php
Introducción Php
 
Software
SoftwareSoftware
Software
 
Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7Tutorial CodeIgniter + Netbeans 7
Tutorial CodeIgniter + Netbeans 7
 
BootStrap
BootStrapBootStrap
BootStrap
 
Bloque academico- Metodología PACIE
Bloque academico- Metodología PACIEBloque academico- Metodología PACIE
Bloque academico- Metodología PACIE
 
Curso Básico PHP
Curso Básico PHPCurso Básico PHP
Curso Básico PHP
 
Estructurabasicaphp 130216112853-phpapp01
Estructurabasicaphp 130216112853-phpapp01Estructurabasicaphp 130216112853-phpapp01
Estructurabasicaphp 130216112853-phpapp01
 
Curso php dia1
Curso php dia1Curso php dia1
Curso php dia1
 
Usando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPUsando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHP
 

Semelhante a Conociendo PHP (20)

Conociendo php (201009)
Conociendo php (201009)Conociendo php (201009)
Conociendo php (201009)
 
PHP
PHPPHP
PHP
 
Introducción a PHP5
Introducción a PHP5Introducción a PHP5
Introducción a PHP5
 
Introducción al desarrollo web
Introducción al desarrollo webIntroducción al desarrollo web
Introducción al desarrollo web
 
Conociendophp 090922184849-phpapp02
Conociendophp 090922184849-phpapp02Conociendophp 090922184849-phpapp02
Conociendophp 090922184849-phpapp02
 
DiseñO Pagina Web
DiseñO Pagina WebDiseñO Pagina Web
DiseñO Pagina Web
 
Especialista Web J9 Php
Especialista Web J9  PhpEspecialista Web J9  Php
Especialista Web J9 Php
 
Php
PhpPhp
Php
 
Caracteríticas Php
Caracteríticas PhpCaracteríticas Php
Caracteríticas Php
 
Php
PhpPhp
Php
 
¿Qué es la Web Semántica?
¿Qué es la Web Semántica?¿Qué es la Web Semántica?
¿Qué es la Web Semántica?
 
Desarrollo de aplicaciones web con PHP y symfony
Desarrollo de aplicaciones web con PHP y symfonyDesarrollo de aplicaciones web con PHP y symfony
Desarrollo de aplicaciones web con PHP y symfony
 
Plone en La Jornada
Plone en La JornadaPlone en La Jornada
Plone en La Jornada
 
QUE ES PHP
QUE ES PHPQUE ES PHP
QUE ES PHP
 
Desarrollo_web_con_PHP_y_MySQL.pdf
Desarrollo_web_con_PHP_y_MySQL.pdfDesarrollo_web_con_PHP_y_MySQL.pdf
Desarrollo_web_con_PHP_y_MySQL.pdf
 
Curso php desde_cero
Curso php desde_ceroCurso php desde_cero
Curso php desde_cero
 
HTML5 la revolución!
HTML5 la revolución!HTML5 la revolución!
HTML5 la revolución!
 
Introducción a php (es)
Introducción a php (es)Introducción a php (es)
Introducción a php (es)
 
Guiacursophp sql
Guiacursophp sqlGuiacursophp sql
Guiacursophp sql
 
Curso introduccionphp sql
Curso introduccionphp sqlCurso introduccionphp sql
Curso introduccionphp sql
 

Mais de Antonio Kobashikawa Carrasco (20)

Tiempos verbales en ingles
Tiempos verbales en inglesTiempos verbales en ingles
Tiempos verbales en ingles
 
Mobile first, ¿Cual es la idea?
Mobile first, ¿Cual es la idea?Mobile first, ¿Cual es la idea?
Mobile first, ¿Cual es la idea?
 
Docker WordPress
Docker WordPressDocker WordPress
Docker WordPress
 
Aprender herramientas
Aprender herramientasAprender herramientas
Aprender herramientas
 
Ahorrando un lapiz
Ahorrando un lapizAhorrando un lapiz
Ahorrando un lapiz
 
Como aprendemos
Como aprendemosComo aprendemos
Como aprendemos
 
Pomodoro
PomodoroPomodoro
Pomodoro
 
De HTML a Express
De HTML a ExpressDe HTML a Express
De HTML a Express
 
Socket.io - Intro
Socket.io - IntroSocket.io - Intro
Socket.io - Intro
 
Sobre información
Sobre informaciónSobre información
Sobre información
 
Teoría de contextos
Teoría de contextosTeoría de contextos
Teoría de contextos
 
Web i
Web iWeb i
Web i
 
Haskell - Intro
Haskell - IntroHaskell - Intro
Haskell - Intro
 
Conciencia
ConcienciaConciencia
Conciencia
 
Dos trenes
Dos trenesDos trenes
Dos trenes
 
La suma de dos numeros
La suma de dos numerosLa suma de dos numeros
La suma de dos numeros
 
Crowd Solving
Crowd Solving Crowd Solving
Crowd Solving
 
Cómo actúa la gente - Para entender la conducta
Cómo actúa la gente - Para entender la conductaCómo actúa la gente - Para entender la conducta
Cómo actúa la gente - Para entender la conducta
 
Something to Result
Something to ResultSomething to Result
Something to Result
 
Señales
SeñalesSeñales
Señales
 

Último

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 

Último (13)

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 

Conociendo PHP

  • 1. Conociendo PHP Introducción a uno de los lenguajes de programación web más usados en Internet Antonio Kobashikawa Carrasco [email_address] @akobashikawa
  • 2.
  • 3. ¿Qué es PHP? Lenguaje de programación para generar páginas web
  • 4. El ciclo web navegador servidor web solicitud respuesta 1 2 3 4 proceso presentación
  • 5. respuesta web servidor web .html .php HTML HTML El contenido del documento .html es pasado tal cual a la respuesta HTML Un documento dinámico (como .php) es procesado para obtener HTML
  • 6. respuesta web servidor web en el proceso, un documento dinámico puede involucrar diversos recursos base de datos email archivos gráficos etc
  • 7.
  • 9. instalando PHP PHP + MySQL instalar PHP instalar Apache instalar módulo PHP instalar MySQL configurar Apache configurar PHP configurar PHP En la instalación manual hay que bajar cada componente, instalarlo y configurarlo.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. Empezando El panel de control de XAMPP, desde donde podemos iniciar y detener sus servicios
  • 15. Conociendo PHP lo básico
  • 16.
  • 17. ¡Hola Mundo! <?php echo '¡Hola Mundo!'; ?> hola_mundo.php htdocs
  • 18. … ¡Hola Mundo! htdocs/index.php htdocs http://localhost/index.php htdocs/hola_mundo.php http://localhost/hola_mundo.php
  • 19. … ¡Hola Mundo! unicode guardado como ASCII unicode guardado como UTF-8 En Notepad++ es fácil comprobar y cambiar el encode Si usamos unicode, tener cuidado de guardar el archivo en UTF-8 (sin BOM)
  • 20. … ¡Hola Mundo! <?php echo '¡Hola Mundo!'; ?> ¡Hola Mundo! servidor web navegador http://localhost/hola_mundo.php .php HTML
  • 21.
  • 22. … ¡Hola Mundo! <html> <body> <h1> ¡Hola Mundo! </h1> </body> </html>
  • 23. Cuadrados <html> <body> <h1>Cuadrados</h1> <table border=&quot;1&quot;> <?php for ($i=1; $i<=10; $i++) { ?> <tr> <td> <?php echo $i;?> </td> <td> <?php echo $i*$i;?> </td> </tr> <?php } ?> </table> </body> </html> cuadrados.php
  • 24. … Cuadrados <html> <body> <h1>Cuadrados</h1> <table border=&quot;1&quot;> <tr> <td> 1 </td> <td> 1 </td> </tr> <tr> <td> 2 </td> <td> 4 </td> </tr> … <tr> <td> 10 </td> <td> 100 </td> </tr> </table> </body> </html>
  • 26. Hola Tú <html> <body> <form action=&quot;hola.php&quot; method=&quot;post&quot;> Nombre: <input type=&quot;text&quot; name=&quot;nombre&quot;/> <input type=&quot;submit&quot; value=&quot;OK&quot;/> </form> </body> </html> hola_form.php
  • 27. … Hola Tú <html> <body> <h1> <?php echo '¡Hola '.$_POST['nombre'].'!';?> </h1> </body> </html> hola.php
  • 28. … Hola Tú <?php echo '¡Hola ' .$_POST['nombre'] .'!'; ?> ¡Hola Antonio! servidor web navegador action=hola.php hola.php HTML nombre=Antonio <form>...</form> <form>...</form> http://localhost/hola_form.php hola_form.php
  • 29. … Hola Tú <html> <body> <?php $nombre = isset($_POST['nombre'])?$_POST['nombre']:''; ?> <form action=&quot;hola_tu.php&quot; method=&quot;post&quot;> Nombre: <input type=&quot;text&quot; name=&quot;nombre&quot; value=&quot; <?php echo $nombre;?> &quot;/> <input type=&quot;submit&quot; value=&quot;OK&quot;> </form> <?php if ($nombre) { echo '<h1>¡Hola '.$nombre.'!</h1>'; }?> </body> </html> hola_tu.php versión de una página
  • 30. … Hola Tú <?php $nombre = ...; ?> <form>...</form> <?php if ($nombre) { echo '<h1>¡Hola ' .$nombre.'!</h1>'; } ?> ¡Hola Antonio! servidor web navegador action=hola_tu.php hola.php HTML nombre=Antonio <form>...</form> http://localhost/hola_tu.php
  • 31. Conociendo PHP un poco más
  • 32.
  • 33. Arrays ( [0]=>2 [1]=>3 [2]=>1 [3]=>'Hola' ) 'Hola' 2 3 1 'Hola' $x = 1; $a = array(2, 3, $x, 'Hola'); a[3] foreach ($a as $item) { echo $item.'<br/>'; } foreach ($a as $indice=>$item) { echo $indice.': '.$item.'<br/>'; } 0: 2 1: 3 2: 1 3: 'Hola'
  • 34. Funciones function hola_mundo() { echo '¡Hola Mundo!'; } function hola($x) { echo '¡Hola '.$x.'!'; } hola_mundo(); hola('Mundo'); function saludo($y) { return '¡Hola '.$y.'!'; } function hola($x) { echo saludo($x); } hola('Mundo'); ¡Hola Mundo!
  • 35. Clases class Hola() { function saludo($y) { return '¡Hola '.$y.'!'; } function hola($x) { echo $this->saludo($x); } } $h = new Hola(); $h->hola('Mundo'); ¡Hola Mundo!
  • 36. include echo '<h1>Conociendo PHP</h1>'; cabecera.php echo 'Hola Mundo'; _hola_mundo.php <html> <body> <?php include 'cabecera.php';?> <?php include '_hola_mundo.php';?> </body> </html> hola_mundo.php
  • 37. require function hola() { return '¡Hola Mundo!'; } funciones.php echo hola(); _hola_mundo.php <html> <body> <?php require('funciones.php');?> <?php include '_hola_mundo.php';?> </body> </html> hola_mundo.php
  • 38.
  • 39.
  • 40.
  • 41.
  • 42. Conociendo PHP Introducción a uno de los lenguajes de programación web más usados en Internet Antonio Kobashikawa Carrasco [email_address] @akobashikawa
  • 43. Gracias por su atención preguntas, comentarios

Notas do Editor

  1. Hola, soy Antonio Kobashikawa, he trabajado un tiempo en desarrollo web, y voy a hablarles un poco de PHP. He programado en PHP más o menos desde el 2006, cuando me encargaron la parte interactiva para un web site de automóviles. Yo venía de programar en Java, con JSP para la aplicaciones web, así que no fue mi primer lenguaje web. PHP me pareció similar, pero más práctico. Luego volví a Java, donde aprendí a usar un framework estándar llamado Struts. Cosa curiosa, un tiempo después y para otro proyecto, eso me ayudó a aprender un framework para PHP llamado Cake. Lo que he aprendido de ambos mundos ha sido guiado por las necesidades del trabajo. Manejo un conjunto de técnicas y herramientas que han sido útiles en los proyectos en que he participado. Pero es como conocer algunos puertos. Hay todo un mar allá afuera. Yo les recomendaría un enfoque similar. Traten de resolver problemas que los motiven, a su propio modo, luego revisen en la bibliografía y completen los huecos. Luego vuelvan sobre lo que resolvieron y vean si pueden hacerlo mejor. &amp;quot;Introducción a uno de los lenguajes de programación web más usados en internet&amp;quot; Inicialmente había pensado en titularlo &amp;quot;Introducción al lenguage de programación web más usado en Internet&amp;quot;. Pero me pareció un poco polémico. Algunos dirían HTML; de eso se hacen todas las páginas web, no?. OK, pero es un lenguaje de formato, no de programación. Otros dirían C; con el que se hizo mucho del software que hace funcionar las redes de Internet. Pero no hay tantos programadores C. En realidad, hay más programadores de Java. Ajá; muchos dirían Java; y sí, hay muchos programadores de Java, empresas, publicaciones… pero por alguna razón, hay más servidores ofreciendo PHP que Java. Java es fuerte, pero PHP es económico, rápido, popular… el más usado… quizás. Podemos encontrar un ranking de lenguages de programación más usados en: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
  2. Espero que para comprender muchos de las cosas de esta exposición bastara con tener algunas nociones de lo que son las páginas web, y la programación en general.
  3. Vamos al punto, qué es php? Es un lenguaje de programación. En qué se usa? puedo hacer un sistema operativo con php? Es un lenguaje de programación para generar páginas web. Por eso se usa en desarrollo web. También se puede usar para crear comandos de línea de consola, en el estilo de Perl. Recientemente ha aparecido la extención PHP-GTK, que, usando php junto con gtk, permite crear aplicaciones de ventana. Sin embargo, php empezó y sigue creciendo principalmete como un lenguaje de programación para generar páginas web. Cómo así las genera? veamos…
  4. Internet es una red de redes. Dentro de cada red hay servidores y clientes a los que atiende. Un servidor web publica páginas web y un navegador web es un cliente que nos permite visualizarlas. El navegador envía una solicitud al servidor, el servidor atiende la solicitud, y envía una respuesta, el navegador publica la respuesta. Y así de nuevo, una y otra vez. Podemos llamar a esto el ciclo web.
  5. Lo que un servidorweb envía de respuesta es básicamente HTML. Un documento HTML en el servidor es enviado tal cual al navegador. Un documento PHP, en cambio, es procesado para obtener el HTML que se enviará. La idea de documento dinámico es la misma que en JSP y ASP. Son básicamente HTML con código especial insertado. El HTML se pasa tal cual, pero el código especial es procesado antes.