Php

Php

PHP es un lenguaje de programación 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. 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. 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.

Su licencia es icompatible con la Licencia Pública Gneral de GNU debido a las restricciones del uso del término PHP, pero aun así sigue siendo open source para nosotros.

Subcategorías

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Hoy me recomiendan ver este proyecto en github.La verdad es guia muy interesante para aprender utilizar las nuevas caracteristicas de PHp, para mejorar nuestro código como programador

Valor del parámetro predeterminado de la función

Ya conociaos que podemos poner un valor predeterminado a un parametro de una función:

 fuction miFuncion ( $parametro = 'default'){ 
.... 
}

Con esto le indicamos que aunque no pasemos el $parametro, su valor va ser 'default'

Pero si al llamar a esa función y le enviamos un null o una variables indefinida

 miFuncion( $a);

El log PHP no muestra una advertencia: variable indefinida $ undefined

Declarar tipo de un parametro de una funcion

Con la declaración de tipo, puede especificar el tipo de datos esperado para una propiedad que se aplicará en tiempo de ejecución. Admite muchos tipos, como tipos escalares (int, string, bool y float), pero también array, iterable, object, stdClass, etc.

 fuction miFuncion ( int $parametro = 'default'){ 
.... 
}

Si no enviamos un entero , entonces nos da un error seria algo asi:

// TypeError: miFuncion(): Argument #1 ($param) must be of type int, string given

Esto puede ser muy útil, para controlar mejor lo que enviamos.

Declarar el valor a devolver por la funcion

A la hora de crear una funcion podemos indicar que vamos devolver, de la siguiente forma:

 fuction miFuncion ( $parametro = 0) : int { 
.... 
}

Entonces si devolvemos algo distinto a un int, no daría el siguiente error:

// TypeError: myFunction (): El valor devuelto debe ser de tipo int, cadena devuelta

... [continuara]

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Un programador debe saber trabajar con sesiones, sobretodo si desarrollas páginas web ya que soy muy útiles y muy necesarias.

Las sessiones en PHP se usan para pasar datos entre paginas del mismo servidor. Normalmente estos datos se guardan en ficheros en el servidor y si lo permite en el navegador en forma de cookie, por defecto esa cookie la llama PHPSESSID, aunque el programador lo puede cambiar.

Funciones de php para trabajar con sesiones

Puedes ver información y mas completa de estas funciones en manual oficial de php, yo aquí voy poniendo las que vamos utilizando.

funcion session_start()

Con esta función abrimos una session creandola o reanudando.

session_start();

Cuando crea una nueva sesion, también crea un fichero en el directorio sessiones de php con el nombre 'sess_idsession', el prefijo 'sess_' el que viene por defecto en la instalacion php, pero se puede cambiar, alguial que la ruta del directorio donde se guarda el fichero.

Cuando reanuda una session existe en el directorio. obtenermos los datos de $_SESSION. Si no tenemos activa ninguna session la variable GLOBAL $_SESSIONES esta vacía.

El concepto iniciar o reanudar lo hace internamente php, ya que si ejecutamos session start() internamente php comprueba si hay alguna y si no hay  genera una nueva.

Si forzamos el abrir una sesión existente, obtenemos los datos $_SESSION que tuviera ese fichero reanudado.

session_id('idsession');
session_start();

Ejecutando las funciones anterirores, es la forma forzar a reanudar una sesión existente, abriendo  la session_id('idsession'), recuerda que lógicamente tiene existir el fichero y tienes que tener permiso acceso ( tuvo que ser creado por el mismo usuario), ese fichero tiene el nombre con el prefijo sess_idsession.

Recuerda que script solo puede actuar sobre una session cada vez, por ello php guarda y cierra la session cada vez termine el script.

Realizando pruebas:

Como siempre tenemos que probar las cosas si funcionan, lo hacemos y ademas intentamos darle mas vuelta (nuestro mini hackeo).
Para poder hacer esto, creamos un pequeño script en php, lo publico github gist text-sessiones.php.

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

PHPMailer es una biblioteca de php para enviar correos electrónicos de forma segura y fácil a través de un código PHP desde un servidor web..

Estas son algunas de las funciones que trae son:

  • Envíos a varios remitentes, con CC, CCO, etc.
  • Soporta 8bits, base64 y binarios
  • Autenticación por SMTP en puertos 25 sin encriptar, 587 TLS, 465 SSL
  • Envíos con HTML
  • Envíos de emails con adjuntos
  • Inclusión de imágenes en el correo, etc

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado

Jugando arrays

Jugando con funciones que nos facilita Php para interactuar con arrays: mezclar, sumar , diferencias y buscar datos en varios array.

Principal 
Array ( [nombre] => Ricardo [apellido] => Carpintero [apellido2] => Carpintero [anhos] => 51 [ciudad] => Vigo [estado] => Casado )
Secundario 
Array ( [nombre] => Ricardo [apellido] => Dominguez [apellido2] => Gil [anhos] => 49 [ciudad] => Vigo [hijos] => 4 )

La idea es jugar con estos arrays para obtener combinaciones, diferencias y iguales

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

El tratamiento de (string) en todo lenguaje es necesario , por ello el conocimiento de los comandos o funciones que podemos utilizar es fundamental.

COMANDO O FUNCIONES DE PHP PARA TRATAMIENTO DE TEXTO

Los comandos mas comunes de php que los programadores

rtrim — Retira los espacios en blanco (u otros caracteres) del final de un string

chr — Devuelve un caracter específico 

strrpos — Encuentra la posición de la última aparición de un substring en un string

substr — Devuelve parte de una cadena

strpos() - Encuentra la posición de la primera ocurrencia de un substring en un string

stripos() - Encuentra la posición de la primera aparición de un substring en un string sin considerar mayúsculas ni minúsculas

strripos() - Encuentra la posición de la última aparición de un substring insensible a mayúsculas y minúsculas en un string

strrchr() - Encuentra la última aparición de un caracter en un string

substr_replace — Reemplaza el texto dentro de una porción de un string

str_getcsv — Convierte un string con formato CSV a un array

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Xdebug es una extensión de PHP que proporciona capacidades de depuración y creación de perfiles. Utiliza el protocolo de depuración DBGp. La información de depuración que Xdebug nos proporciona puede ser:

  • La pila de memoria que utiliza y los mensajes de error con:
    • Visualización completa de parametros para funciones definidas por el usuario.
    • Nombre de función , nombre archivo e indicaciones de linea.
    • Soporte para funciones miembro.
  • Asignación de memoria.
  • Protección para recursiones infinitas.
  • Información de perfil del script PHP
  • Análisis de cobertura del código.
  • Capacidad de depurar sus scripts interactivamente con un front-end de depurador.

Una vez instalado y activado recuerda que debes reiniciar el servidor, puede ser con:

systemctl restart apache2

¿ Activar Xdebug ?

Muy similar como activar en versiones distinta de php.

phpenmod xdebug

¿Desactivar Xdebug?

phpdismod xdebug
Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

Ambas son funciones de php.

Require es idéntico a include excepto que en caso de fallo producirá un error fatal de nivel E_COMPILE_ERROR. En otras palabras, éste detiene el script mientras que include sólo emitirá una advertencia (E_WARNING) lo cual permite continuar el script.

Ver mas información en php.net ( Require ) ( Include )

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado

La intención de este post es saber cuantas versiones tenemos de php en nuestro servidor apache y como cambiarlas según las necesidades.

Nuestro técnico de sistema nos preparo el servidor local para poder utilizar cualquiera de estas versiones php:

  • php 5.6
  • php 7.0
  • php 7.1
  • php 7.2

Lo primeros saber que versiones tenemos instaladas de nuestra maquina. Una forma cómoda sería:

ls etc/php 

En nuestro equipo nos aparece el listado de las distintas versiones que tenemos instaladas.

Esto es útil para poder testear webs en distintas versiones de php, ya que muchas veces los servidores que tienen nuestros clientes no siempre tienen la ultima versión de php.

Lo primero que hay que saber es que version tienes ahora activa:

  • Viendo phpinfo()-> Te lo indica...
  • Con ls /etc/apache2/mods-enabled/php* nos indicara que versiones tenemos activas :-)
  • a2query -m -> Lista todo los modulos activos del apache, entre ellos el de php

 

Para activar una versión lo hacemos con a2enmod, por ejemplo queremos activar php5.6 con: