jueves, 9 de octubre de 2014

CONCEPTOS DE PHP




PHP es un lenguaje de código abierto muy popular, adecuado para desarrollo web y que puede ser incrustado en HTML. Es popular porque un gran número de páginas y portales web están creadas con PHP. Código abierto significa que es de uso libre y gratuito para todos los programadores que quieran usarlo. Incrustado en HTML significa que en un mismo archivo vamos a poder combinar código PHP con código HTML, siguiendo unas reglas.

PHP se utiliza para generar páginas web dinámicas. Recordar que llamamos página estática a aquella cuyos contenidos permanecen siempre igual, mientras que llamamos páginas dinámicas a aquellas cuyo contenido no es el mismo siempre. Por ejemplo, los contenidos pueden cambiar en base a los cambios que haya en una base de datos, de búsquedas o aportaciones de los usuarios, etc.

Es preciso menciona que el lenguaje PHP se procesa en servidores, que son potentes ordenadores con un software y hardware especial. Cuando se escribe una dirección tipo http://www.aprenderaprogramar.com/index.php en un navegador web como Internet Explorer, Firefox o Chrome, ¿qué ocurre? Se envían los datos de la solicitud al servidor que los procesa, reúne los datos (por eso decimos que es un proceso dinámico) y el servidor lo que devuelve es una página HTML como si fuera estática.

En un sitio dinámico, la información generalmente está contenida en una base de datos. Cada vez que mostramos la página, como por ejemplo una página de noticas, buscamos en la base de datos las últimas noticias que tenemos ingresadas para mostrar en el navegador del visitante. Ahora bien, ¿cómo se consigue que la página vaya mostrando noticias nuevas? Simplemente cargando las mismas en la base de datos, por ejemplo, a través de un formulario que rellena una persona y que una vez relleno cuando pulsa “Enviar” implica que lo que haya escrito se guarde en nuestra base de datos. De esta manera, cuando solicitamos la página web y el servidor consulte la base de datos, encontrará esta nueva información y mostrará nuestra página de forma distinta a como se veía anteriormente.
Por regla general este tipo de lenguaje suele ser utilizado para crear contenido dinámico y poder interactuar con el usuario.
Veamos un ejemplo del contenido de una página web php, que habremos de almacenar en un archivo que termina con la extensión .php y que contiene texto:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Ejemplo</title>
</head>
<body>
<?php
echo "Bienvenidos a aprenderaprogramar.com";
?>
</body>
</html>

Ejecutando ficheros PHP ¶
Hay tres formas distintas de proveer a la CLI SAPI con código PHP para que sea ejecutado:
1.     Decirle a PHP que ejecute un determinado fichero.
2.    $ php mi_script.php
3.     
4.    $ php -f mi_script.php
Ambas formas (usando o no el modificador -f ) ejecutan el fichero mi_script.php. Nótese que no hay restricción sobre cuales ficheros puede ser ejecutado; en particular, el nombre del fichero no es necesario que tenga una extensión .php.
Nota:
Si se necesita proporcionar argumentos al script, utilizando el modificador -f , el primer argumento debe ser --.
5.     Pasar el código PHP para ejecutarlo directamente en la línea de comandos.
6.    $ php -r 'print_r(get_defined_constants());'
Debe tomarse especial cuidado con respecto al uso de comillas y la sustitución de variables de la consola.
Nota:
Lea cuidadosamente el ejemplo: No hay etiquetas de inicio y fin. El modificador -r simplemente no lo necesita. Si se usare, provocaría un error sintáctico.
7.     Proporcionar el código PHP a ejecutar a través de la entrada estándar (stdin).
Esto ofrece la posibilidad de crear código PHP dinámicamente para pasárselo al binario, tal y como se ve en este ejemplo (ficticio):
$ alguna_aplicacion | algun_filtro | php | sort -u > salida_final.txt
No se pueden combinar las tres formas para ejecutar código.
Como todas las aplicaciones de consola, el binario de PHP acepta un determinado número de argumentos, sin embargo un script PHP también puede recibirlos. El número de argumentos que pueden ser pasados a su script no está limitado por PHP (aunque la consola tiene un determinado número de caracteres límite; usualmente usted no alcanzará este límite). Los argumentos pasados al script están disponibles en el array global $argv. El primer índice (cero) siempre contiene el nombre del script como se llamó desde la línea de comandos. Nótese que, si el código es ejecutado en la línea utilizando el modificador de consola -r , el valor de $argv[0] será simplemente un guión medio -). Lo mismo aplica si el código es ejecutado por medio de una tubería desde la entrada estándar STDIN.
Una segunda variable global, $argc, contiene el número de elementos en el arreglo $argv (pero no el número de argumentos pasados al script).
Dado que los argumentos que se pasan a un script no comienzan con el caracter -, no hay nada especial a tener en cuenta. Si se pasa a un script un argumento que comience por - provocará errores porque el intérprete de PHP pensará que debe manejarlo él, aún antes de ejecutar el script. Para prevenir esto, utilice el separador de lista de argumentos --. Una vez que PHP lea este separador, todos los argumentos que lo sigan se pasarán intactos al script.
# Esto no ejecutará el código dado, sino que mostrará el uso de PHP
$ php -r 'var_dump($argv);' -h
Usage: php [options] [-f] <file> [args...]
[...]

# Esto pasrá el argumento '-h' al script, impidiendo que PHP muestre su uso
$ php -r 'var_dump($argv);' -- -h
array(2) {
  [0]=>
  string(1) "-"
  [1]=>
  string(2) "-h"
}
Sin embargo, en sistemas Unix, hay otra forma de usar PHP para scripts de consola. Se puede escribir un script en el que la primera línea comience con #!/usr/bin/php (sustitúyalo por la ruta a su CLI binario de PHP si es diferente). El resto del fichero debería contener código PHP normal con las etiquetas usuales de inicio y fin de PHP. Una vez que se otorguen permisos de ejecución al fichero apropiadamente (p.ej. chmod +x test) el script podrá ejecutarse como cualquier otro script de consola o perl:
Ejemplo #1 Ejecutando un script PHP como un script de consola
#!/usr/bin/php
<?php
var_dump
($argv);
?>
Asumiendo que este fichero se llama test y que está en el directorio actual, es posible hacer lo siguiente:
$ chmod +x test
$ ./test -h -- foo
array(4) {
  [0]=>
  string(6) "./test"
  [1]=>
  string(2) "-h"
  [2]=>
  string(2) "--"
  [3]=>
  string(3) "foo"
}
Tal y como puede verse, en este caso no hace falta tener cuidado al pasar al script parámetros que comienzan con -.
El ejecutable de PHP puede ser utilizado para ejecutar scripts de PHP que sean absolutamente independientes del servidor web. En sistemas Unix, los caracteres especiales #! (o conocido como "shebang") deben añadirse en la primera línea del script seguido de la ruta hacia el binario de PHP para que le indique autom[aticamente al sistema cual es el programa que debería ejecutar al script. En plataformas Windows puede asociar php.exe para que funcione al hacer doble clic en ficheros con extensión .php, o se puede hacer un fichero por lotes para ejecutar el script mediante PHP. La primera línea especial "shebang" que se añade a un script para que funcione en Unix no interferirá en Windows (ya que está formateado como un comentario de PHP), así que pueden escribirse programas para plataformas independientes incluyéndose sin ningún problema. Más abajo puede encontrarse un ejemplo sencillo de cómo escribir un programa de línea de comandos en PHP.
Ejemplo #2 Script destinado a ejecutarse desde la línea de comandos (script.php)
#!/usr/bin/php
<?php

if ($argc != || in_array($argv[1], array('--help''-help''-h''-?'))) {
?>

Éste es un script PHP de línea de comandos con un parámetro.

  Uso:
  
<?php echo $argv[0]; ?> <parámetro>

  <parámetro> puede ser alguna palabra que desee
  mostrar en pantalla. Con las opciones --help, -help, -h,
  o -?, puede mostrarse esta ayuda.

<?php
} else {
    echo 
$argv[1];
}
?>
El script de arriba, incluye la primera línea especial "shebang" de Unix para indicar que este fichero debería ejecutarse por PHP. Puesto que aquí estamos trabajando con una versión CLI, no se mostrarán cabeceras HTTP.
El programa comprueba primero que hay más de un parámetro (adicionalmente al nombre del script, el cual también es contado). Si no lo hay, o si el parámetro fuese --help , -help , -h o -? , se imprime el mensaje de ayuda, utilizando $argv[0] para escribir el nombre del script dinámicamente tal como se escribió en la línea de comandos. De otra manera, el parámetro es mostrado exactamente como se recibió.
Para ejecutar el script superior en Unix, debe otorgarle permisos de ejecución al fichero para hacerlo ejecutable, y llamarlo simplemente como script.php mostrar_esto o script.php -h. En Windows, se puede crear un fichero por lotes para lograr esta tarea:
Ejemplo #3 Fichero por lotes para ejecutar un script PHP en línea de comandos (script.bat)
@echo OFF
"C:\php\php.exe" script.php %*
Asumiendo que el programa superior se llamara script.php, y CLI php.exe estuviera en C:\php\php.exe , este fichero por lotes lo ejecutaría automáticamente con los parámetros que se le hayan pasado: script.bat mostrar_esto o script.bat -h.
Vea también la documentación de extensión Readline para conocer más funciones que pueden ser utilizadas para mejorar las aplicaciones de línea de comandos en PHP.

Inserción de PHP en HTML
EL PHP va dentro dentro de la página HTML (o página PHP, según se vea) y para insertarlo dentro de utilizan, entre otras cosas, las instrucciones de procesado (<? ... ?>).
·              <? .... ?> Sólo si se activa la función short_tags() o la bandera de configuración short_open_tag.
·              <?php .... ?>
·              <script languaje="php"> .... </script>
·              <% .... %> Sólo si se activan los tags para ficheros 'asp' con la bandera de configuración asp_tags.
Separación de instrucciones
Las instrucciones se separan con ';', en el caso de ser la última instrucción no esnecesario el punto y coma.
Comentarios
Los comentarios en PHP pueden ser:
·             Como en C o C++, /*...*/ ó //
·             Otro tipo de comentario de una línea es #, que comentará la línea en la que aparezca pero sólo hasta el tag ?> que cierra el código php.
4.- Tipos de Datos
Los tipos de cada variable en PHP no están tan claros como en C. El intérpreteasigna el tipo de una variable según el uso que se esté haciendo de ella. Para asignar un tipo fijo a una variable se utiliza la función settype(). Los tipos son:
·              Enteros
·              Flotantes
·              String
·              Arrays
·              Objetos
·              Variables variables


12 cosas importantes que ustes debe conocer de PHP:
- Es un lenguaje de programacion para desarrollar páginas Web.
- Sus siglas  Significan “PHP Hypertext Processor”
- Su creador fue Rasmus Lerdorf in 1995.
- En 1997 fue reescrito y lanzado como versión 2.
- A finales de 1997 fue reesxrito por Andi Gutmans y Zeev Suraski.
-En 1998 fue reescrito  por Zeev y Andi, llamado Zend engine.
-En mayo de 2000 se liberó la versión 4.0 que incluye “Zend engine“.
-Este lenguaje de PHP 5 incluye soporte para POO.
-Se ejecuta en el servidor.
-Es un lenguaje interpretado.
-Existen varios millones de sitios web servidos con PHP.
-Posición  4   en TIOBE Index Julio 2009. 

No hay comentarios:

Publicar un comentario