27
Yumayris García Juan Ortiz Orlando Rodríguez

Php tema 4

Embed Size (px)

Citation preview

Yumayris GarcíaJuan Ortiz

Orlando Rodríguez

PHP es un lenguaje de programación de uso general de script del lado del servidor originalmente diseñado para el desarrollo web de contenido dinámico. Fue uno de los primeros lenguajes de programación del lado del servidor que se podían incorporar directamente en el documento HTML en lugar de llamar a un archivo externo que procese los datos. El código es interpretado por un servidor web con un módulo de procesador de PHP que genera la página Web resultante. YG.

Existe una multitud de lenguajes concebidos o no para Internet.Cada uno de ellos explota más a fondo ciertas características quelo hacen más o menos útiles para desarrollar distintasaplicaciones.

Un lenguaje del lado del servidor es aquel que se ejecuta en elservidor web, justo antes de que se envíe la página a través deInternet al cliente. Las páginas que se ejecutan en el servidorpueden realizar accesos a bases de datos, conexiones en red, yotras tareas para crear la página final que verá el cliente.

Los lenguajes de lado servidor más ampliamente utilizados parael desarrollo de páginas dinámicas son el ASP, JSP, PERL y PHP

OR

PHP ha evolucionado, por lo que ahora incluye también una interfaz de línea de comandos que puede ser usada en aplicaciones gráficas independientes. PHP puede ser usado en la mayoría de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ningún costo.

JS

El lenguaje PHP se encuentra instalado en más de 20 millones de sitios web y en un millón de servidores, el número de sitios en PHP ha compartido algo de su preponderante dominio con otros nuevos lenguajes no tan poderosos desde agosto de 2005.

JS.

Cuando el cliente hace una petición al servidor para que le envíe una página web, el servidor ejecuta el intérprete de

PHP. Éste procesa el script solicitado que generará el contenido de manera dinámica (por ejemplo obteniendo información de una base de datos). El resultado es enviado por el intérprete al servidor, quien a su vez se lo envía al cliente. Mediante extensiones es también posible la generación de archivos PDF, Flash, así como imágenes en diferentes formatos.

Permite la conexión a diferentes tipos de servidores de bases de datos tales como MySQL, PostgreSQL, Oracle,

ODBC, DB2, Microsoft SQL Server, Firebird y SQLite. YG.

OR

PHP también tiene la capacidad de ser ejecutado en la mayoría de los sistemas operativos, tales como Unix (y de ese

tipo, como Linux o Mac OS X) y Microsoft Windows.

YG.

PHP puede también interactuar con los servidores de web más populares

ya que existe en versión CGI, módulo para Apache, e ISAPI

YG.

Version actual es la 5.4.3 lanzada en 2012-05-08. Novedades: Arreglo de vulnerabilidad para instalaciones basadas en CGI y también para la vulnerabilidad de desbordamiento de búfer para apache_request_headers()

Extensiones comunes .php, .phtml .php4 .php3 .php5 .phps

JS.

En PHP es posible crear aplicaciones con una interfaz gráfica para el usuario, utilizando la extensión PHP-Qto PHP-GTK. También puede ser usado desde la línea de órdenes, de la misma manera como Perl o Pythonpueden hacerlo; a esta versión de PHP se la llama PHP-CLI (Command Line Interface).

JS

PHP es utilizado en millones de sitios, entre los más destacados se encuentran wikipedia.org, facebook.com y Wordpress.com

OR.

Cuando PHP interpreta un fichero, busca las etiquetasde apertura y cierre, que son <?php y ?>, y que indicana PHP dónde empezar y finalizar la interpretación delcódigo. Este mecanismo permite a PHP ser incrustadoen todo tipo de documentos, ya que todo lo que estéfuera de las etiquetas de PHP será ignorado por elintérprete.

YG

<html><head><title>Ejemplo PHP</title></head><body><?php echo '<p>Hola Mundo</p>'; ?></body></html>

Utilice su navegador web para acceder al archivo en su servidor, con la URL terminando en /hola.php. Si está programando localmente este URL será algo como http://localhost/hola.php ohttp://127.0.0.1/hola.php pero esto depende de la configuración de su servidor web. Si todo está configurado correctamente, el fichero será analizado por PHP y el siguiente contenido aparecerá en su navegador:

<html>

<head>

<title>Ejemplo PHP</title>

</head>

<body>

<p>Hola mundo</p>

</body>

</html>

OR

Este script es extremadamente simple y no es necesariousar PHP para crear una página como esta. Lo únicoque muestra es: Hola mundo usando la sentencia dePHP echo. El fichero no debe ser ejecutable oespecial de ninguna forma. El servidor reconoce queeste fichero debe ser interpretado por PHP porqueestamos usando la extensión ".php", el cuál estáconfigurado para enviarlo a PHP. Piensa como si fueraun fichero HTML normal el cual tiene una serie deetiquetas especiales disponibles con las que puedeshacer muchas cosas interesantes OR

Orientado al desarrollo de aplicaciones web dinámicas conacceso a información almacenada en una base de datos.

Es considerado un lenguaje fácil de aprender,ya que en sudesarrollo se simplificaron distintas especificaciones, como es elcaso de la definición de las variables primitivas, ejemplo que sehace evidente en el uso de php arrays.

El código fuente escrito en PHP es invisible al navegador web yal cliente ya que es el servidor el que se encarga de ejecutar elcódigo y enviar su resultado HTML al navegador. Esto hace que laprogramación en PHP sea segura y confiable.

Capacidad de conexión con la mayoría de los motores de base dedatos que se utilizan en la actualidad, destaca su conectividadcon MySQL y PostgreSQL.

YG

Capacidad de expandir su potencial utilizando módulos(llamados ext's o extensiones).

Posee una amplia documentación en su sitio web oficial,entre la cual se destaca que todas las funciones del sistemaestán explicadas y ejemplificadas en un único archivo deayuda.

Es libre, por lo que se presenta como una alternativa defácil acceso para todos

Permite aplicar técnicas de programación orientada aobjetos. Incluso aplicaciones como Zend framework,empresa que desarrolla PHP, están totalmentedesarrolladas mediante esta metodología. JS

No requiere definición de tipos de variables aunque sus variables se pueden evaluar también por el tipo que estén manejando en tiempo de ejecución.

Tiene manejo de excepciones (desde PHP5).

Si bien PHP no obliga a quien lo usa a seguir una determinada metodología a la hora de programar, aun haciéndolo, el programador puede aplicar en su trabajo cualquier técnica de programación o de desarrollo que le permita escribir código ordenado, estructurado y manejable. Un ejemplo de esto son los desarrollos que en PHP se han hecho del patrón de diseño Modelo Vista Controlador (MVC), que permiten separar el tratamiento y acceso a los datos, la lógica de control y la interfaz de usuario en tres componentes independientes. JS

Como es un lenguaje que se interpreta en ejecución, para ciertos usos puede resultar un inconveniente que el código fuente no pueda ser ocultado. La ofuscación es una técnica que puede dificultar la lectura del código pero no necesariamente impide que el código sea examinado.

Debido a que es un lenguaje interpretado, un script en PHP suele funcionar considerablemente más lento que su equivalente en un lenguaje de bajo nivel, sin embargo este inconveniente se puede minimizar con técnicas de cache tanto en archivos como en memoria.

Las variables al no ser tipadas dificulta a los diferentes IDEs para ofrecer asistencias para el tipeado del código, aunque esto no es realmente un inconveniente del lenguaje en sí. Esto es solventado por Zend Studio añadiendo un comentario con el tipo a la declaración de la variable.

YG

Existen otras opciones , tales como ASP, JSP, PERL .

Veamos las ventajas y desventajas de las mismas; a partir de entonces realizamos una comparación con PHP.

OR

Ventajas:

Completamente orientado a objetos.

Controles de usuario y personalizados.

División entre la capa de aplicación o diseño y el código.

Facilita el mantenimiento de grandes aplicaciones.

Incremento de velocidad de respuesta del servidor.

Mayor velocidad.

Mayor seguridad OR.

Desventajas:

Mayor consumo de recursos.

Tecnología propietaria.

Hospedaje de sitios web costosos.

OR

Ventajas:

Ejecución rápida del servlets.

Crear páginas del lado del servidor.

Multiplataforma.

Código bien estructurado.

Integridad con los módulos de Java.

La parte dinámica está escrita en Java.

Desventajas:

Complejidad de aprendizaje.

OR

Ventajas

Es un buen lenguaje “pegamento”. Se pueden juntar varios programas de una forma sencilla para alcanzar una meta determinada. Los usuarios de Windows agradecerán esta propiedad ya que normalmente adolecen de un buen lenguaje tipo “script”.

Es relativamente rápido para un lenguaje tipo “script”.

Está disponible en múltiples plataformas y sistemas operativos (UNIX, Linux y Windows). Un programa que se escriba teniendo en cuenta la compatibilidad puede ser escrito en una plataforma y ejecutado en otra.

El desarrollo de aplicaciones es muy rápido.

Hay una colección enorme de módulos que pueden ser incorporados a cualquier “script” de Perl. Están disponibles en el CPAN (“Comprehensive Perl Archive Network”). En particular existe una extensión para cálculo numérico denominada PDL.

JS

Perl es gratuito. Mucho más que eso, es “Software Libre”. Esto quiere decir que el código fuente está disponible para que cualquiera lo pueda ver o modificar, y lo que es más importante, siempre lo estará. Aunque nunca pretendas cambiar el código, es importante disponer de la posibilidad de hacerlo, ya que siempre se podrá contratar a una tercera persona para que lo modifique en el caso de que haya un error, y debería ser posible solucionarlo.

Le otorga al programador mucha libertad para que haga el programa como quiera. Tal como dice el eslogan de Perl “Hay más de una forma de hacerlo”.

YG

Desventajas

Es lento para algunas aplicaciones, como programación a bajo nivel, escribiendo un “driver” para una aplicación o corriendo modelos numéricos de cálculo intensivo. Si bien se pueden insertar subrutinas FORTRAN o C en Perl, teniendo lo mejor de los dos mundos, pero con algo más de complejidad.

La libertad que se le otorga al programador puede significar que el resultado sea un programa ilegible. Si no se escribe con cuidado puede llegar a ser difícil de leer. De hecho hay un concurso de Perl ofuscado.

Perl es un lenguaje interpretado. Este tema no es tan crítico como suena, los programas Perl no correrán mucho más rápidos cuando se compilen, la única ventaja está en la desaparición de la fase inicial de compilación al correr la aplicación.

Utiliza muchos recursos de computó. Esto significa que no es tan ligero como un programa en C, pero en la práctica es ligero comparado con la potencia de procesamiento de las computadoras actuales.

JS