Diferencia entre revisiones de «Plantilla:PHP/Instalacion»

De WikiEducator
Saltar a: navegación, buscar
 
(11 revisiones intermedias por el mismo usuario no mostrado)
Línea 1: Línea 1:
 
<div class=slide>
 
<div class=slide>
 
[[imagen:php.png]]
 
[[imagen:php.png]]
*En este caso hemos de tener cuidado si instalamos con ubuntu14:04 o con ubuntu 16:04
 
*En caso de ubuntu 14:04
 
<source lang=bash>
 
# Ubuntu 14.04 Only
 
sudo add-apt-repository ppa:ondrej/php
 
sudo apt-get update
 
</source>
 
{{Pregunta|
 
Entiendes bien lo que hace el comando anterior}}
 
 
</div>
 
</div>
 +
 
<div class=slide>
 
<div class=slide>
;Ahora instalamos php como un módulo de apache2
+
;Ahora instalamos php como un módulo de '''apache2'''.
 +
*Alternativamente se puede instalar como un fpm, en producción puede ser interesante https://www.stackscale.es/php-fpm-php-webs-alto-trafico/
 +
*Nosotros, por comodidad en su gestión, lo instalaremos como un módulo de apache. No vamos a notar diferencia
 +
 
 
<source lang=bash>
 
<source lang=bash>
apt-get -y install php7.0 libapache2-mod-php7.0
+
apt-get -y install php libapache2-mod-php
 
</source>
 
</source>
 +
{{Nota| '''''-y''''' es para que no pregunte, un yes por defecto. Se pueden poner varios paquetes seguidos (en este caso 2: '''''php''''' y ''''libapache2-mod-php'''''}}
 
*Posteriormente y según necesitemos otros módulos que los podemos dejar instalados ya
 
*Posteriormente y según necesitemos otros módulos que los podemos dejar instalados ya
 
<source lang=bash>
 
<source lang=bash>
  sudo apt-get install php-mcrypt php7.0-soap php7.0-mbstring php7.0-intl php7.0-xml php7.0-curl php7.0-gd
+
  sudo apt-get install php-mcrypt php-soap php-mbstring  
 +
php-intl php-xml php-curl php-gd php-mysql
 
</source>
 
</source>
 
</div>
 
</div>
 +
 
<div class=slide>
 
<div class=slide>
'''''#mycrypt''''' '''http://php.net/manual/es/mcrypt.ciphers.php para''' cifrar, se usa con Soap (Servicios Web)
+
*'''''#mycrypt''''' '''http://php.net/manual/es/mcrypt.ciphers.php para''' cifrar, se usa con Soap (Servicios Web)
'''''#mbstring''''' '''http://php.net/manual/es/mbstring.installation.php''' Para trabajar con cadenas de caracteres multibyte
+
*'''''#mbstring''''' '''http://php.net/manual/es/mbstring.installation.php''' Para trabajar con cadenas de caracteres multibyte
'''''#xml''''' '''http://php.net/manual/es/simplexml.examples-basic.php '''
+
*'''''#xml''''' '''http://php.net/manual/es/simplexml.examples-basic.php '''
'''''#curl''''' '''http://php.net/manual/es/function.curl-init.php'''
+
*'''''#curl''''' '''http://php.net/manual/es/function.curl-init.php'''
'''''#gd''''' '''http://php.net/manual/es/intro.image.php''' para trabajr con biblioteca de imágenes
+
*'''''#gd''''' '''http://php.net/manual/es/intro.image.php''' para trabajr con biblioteca de imágenes
 
</div>
 
</div>
 +
 
<div class="slide">
 
<div class="slide">
 
===Breve Historia de php===
 
===Breve Historia de php===
Línea 38: Línea 37:
 
*Código abierto
 
*Código abierto
 
</div>
 
</div>
 +
 
<div class="slide">
 
<div class="slide">
 
;Zeev Suraski y Andi Gutmans
 
;Zeev Suraski y Andi Gutmans
Línea 48: Línea 48:
 
**Puede funcionar sobre cualquier servidor
 
**Puede funcionar sobre cualquier servidor
 
</div>
 
</div>
<div class="slide">
 
  
 +
<div class="slide">
 
;2004: Motor Zend 2
 
;2004: Motor Zend 2
 
**'''''PHP 5: OOP y MySQL: Un punto de inflexión real'''''
 
**'''''PHP 5: OOP y MySQL: Un punto de inflexión real'''''
Línea 62: Línea 62:
 
**2013: La extensión original MySQL está obsoleta en
 
**2013: La extensión original MySQL está obsoleta en
 
</div>
 
</div>
<div class="slide">
 
  
 +
<div class="slide">
 
;PHP 5.0. En su lugar, usar la extension MySQLi o PDO_MySQL.
 
;PHP 5.0. En su lugar, usar la extension MySQLi o PDO_MySQL.
 
* 2014: Lanzamiento de la versión 5.6
 
* 2014: Lanzamiento de la versión 5.6
 
* 10/2015: Lanzamiento de la versión 7
 
* 10/2015: Lanzamiento de la versión 7
 
*Para ver la historia '''''http://php.net/manual/es/history.php'''''
 
*Para ver la historia '''''http://php.net/manual/es/history.php'''''
 +
</div>
 +
 +
<div class="slide">
 +
;PHP 7.0.
 +
*PHP 6 nunca llegó a lanzarse como una versión oficial
 +
* 10/2015: Lanzamiento de la versión 7
 +
*Para ver la historia '''''http://php.net/manual/es/history.php'''''
 +
*Tenemos nuevas funcionalidades y pocas incompatibilidades
 +
*Operador nave espacial <=>
 +
*Operador ternario ??
 +
*Clases anónimas
 +
*Declaración en tipos de los parámetros y tipo de valor de retorno en funciones
 +
</div>
 +
 +
 +
<div class="slide">
 +
;Restaurar el servicio
 +
*Debemos restaurar el servicio para que los cambios tengan efecto en el servidor web
 +
<source lang=bash>
 +
/etc/init.d/apache2 restart
 +
</source>
 +
{{MRM_Actividad|
 +
*Localiza el fichero de configuracion de php: '''''php.ini'''''
 +
*Analiza el valor y significado de las siguientes directivas
 +
#short_open_tags
 +
#max_execution_time
 +
#error_reporting
 +
#file_upload
 +
#upload_max_filesize}}
 
</div>
 
</div>

Última revisión de 06:34 21 sep 2019

Php.png

Ahora instalamos php como un módulo de apache2.
apt-get -y install php libapache2-mod-php

(Comment.gif: -y es para que no pregunte, un yes por defecto. Se pueden poner varios paquetes seguidos (en este caso 2: php y 'libapache2-mod-php)


  • Posteriormente y según necesitemos otros módulos que los podemos dejar instalados ya
 sudo apt-get install php-mcrypt php-soap php-mbstring 
php-intl php-xml php-curl php-gd php-mysql

Breve Historia de php

Rasmus Lerdorf
  • Diseñó un CGI intérprete de scripts incrustados en las páginas web.
    • Evita la compilación
    • Evita la instalación
    • Logra compatibilidad entre plataformas
1995 – PHP (Personal Home Page Tools)
  • Código abierto
Zeev Suraski y Andi Gutmans
  • 1998: PHP 3. PHP Hypertext Preprocessor
    • Admite módulos externos
Zend
  • Motor Zend (núcleo de PHP reescrito)
  • 2000: PHP 4
    • Abstracción respecto al servidor
    • Puede funcionar sobre cualquier servidor
2004
Motor Zend 2
    • PHP 5: OOP y MySQL: Un punto de inflexión real
¿Qué pasó con PHP 6?
  • 2005: Se anuncia PHP 6
  • Codificación Unicode
  • Más complejo de lo esperado
  • Tensión entre los desarrolladores por los retrasos
  • 2010: Se lanza PHP 5.3 y se separa la codificación Unicode a otra rama
  • PHP 5.3 es PHP 6 salvo por la codificación Unicode
    • 2012: La mayoría de las mejoras en PHP 5.4.x no tienen ningún impacto sobre el código existente
    • 2013: La extensión original MySQL está obsoleta en
PHP 5.0. En su lugar, usar la extension MySQLi o PDO_MySQL.
PHP 7.0.
  • PHP 6 nunca llegó a lanzarse como una versión oficial
  • 10/2015: Lanzamiento de la versión 7
  • Para ver la historia http://php.net/manual/es/history.php
  • Tenemos nuevas funcionalidades y pocas incompatibilidades
  • Operador nave espacial <=>
  • Operador ternario ??
  • Clases anónimas
  • Declaración en tipos de los parámetros y tipo de valor de retorno en funciones


Restaurar el servicio
  • Debemos restaurar el servicio para que los cambios tengan efecto en el servidor web
/etc/init.d/apache2 restart


Icon activity.jpg
Actividad
  • Localiza el fichero de configuracion de php: php.ini
  • Analiza el valor y significado de las siguientes directivas
  1. short_open_tags
  2. max_execution_time
  3. error_reporting
  4. file_upload
  5. upload_max_filesize