Un tutorial sencillo
PHP Manual

Algo útil

Hagamos ahora algo que puede ser más útil. Vamos a comprobar qué clase de navegador está utilizando el usuario. Para hacerlo, vamos a consultar la información que el navegador nos envía como parte de su petición HTTP. Esta información es guardada en una variable. Las variables siempre comienzan con un signo de dólar ("$") en PHP. La variable que vamos a utilizar en esta situación es $_SERVER['HTTP_USER_AGENT'].

Nota:

$_SERVER es una variable especial reservada por PHP que contiene toda la información del servidor web. Es conocida como Superglobal. Consulte el manual en su sección titulada Superglobales para más información. Éstas variables especiales fueron introducidas en la versión » 4.1.0 de PHP. Antes podíamos usar las arrays $HTTP_*_VARS, tales como $HTTP_SERVER_VARS. Aunque éstas han sido marcadas como obsoletas, tales arrays todavía existen. (También puede echar un vistazo a las notas relacionadas con el código antiguo.)

Para mostrar esta variable, se puede simplemente hacer:

Ejemplo #1 Imprimir una variable (Elemento array)

<?php
echo $_SERVER['HTTP_USER_AGENT'];
?>

Un ejemplo del resultado de esta secuencia de comandos sería:


Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

Hay muchos tipos de variables en PHP. En el ejemplo anterior imprimimos un array. Los arrays pueden ser muy útiles.

$_SERVER es simplemente una variable que se encuentra disponible automáticamente en PHP. Puede encontrar una lista en la sección titulada Variables Reservadas del manual, o puede generar una lista completa creando un archivo como el ejemplo de la sección anterior.

Puede usar más de un declaración PHP dentro de una etiqueta PHP, y crear pequeños segmentos de código que pueden hacer más que un único echo. Por ejemplo, si quisiéramos detectar el uso de Internet Explorer, haríamos algo así:

Ejemplo #2 Ejemplo usando estructuras de control y functiones

<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
    echo 
'Está usando Internet Explorer.<br />';
}
?>

Un ejemplo del resultado de esta secuencia de comandos sería:

Está usando Internet Explorer.<br />

A continuación introduciremos un par de conceptos nuevos. Tenemos una declaración if. Si está familiarizado con la sintaxis básica del lenguaje C, esto se vera lógico, Pero si no entiende C, u otros lenguajes de programación donde encuentra la sintaxis usada anteriormente, probablemente debería conseguir un libro que le introduzca mejor a PHP, y lea los primeros capítulos, o también puede ver la parte del manual titulada Referencia del lenguaje parte del manual.

El segundo concepto que introducimos fue la función llamada strstr(). strstr() es una función integrada de PHP que busca un cadena dentro de otra cadena. En este caso anterior estamos buscando 'MSIE' (llamado aguja) dentro de $_SERVER['HTTP_USER_AGENT'] (llamado pajar). Si la cadena fue encontrada, la función devolverá la posición de la aguja relativa al inicio del pajar. De lo contrario devolverá FALSE. Si no devuelve FALSE, la declaración if se evalúa a TRUE y el código adentro de las llaves {} es ejecutado. De lo contrario, el código no será ejecutado. Tómese la libertad de crear ejemplos similares usando if, else, y otras funciones como strtoupper() y strlen(). Cada página del manual contiene ejemplos que puede usar. Si no está seguro sobre el modo de uso éstas funciones, es recomendable que lea las páginas del manual tituladas Cómo leer una definición de función y la sección relacionada a Funciones en PHP.

Podemos continuar y demostrar cómo puede saltar adentro y afuera del modo PHP en el medio de un bloque de código:

Ejemplo #3 Mezcla de los modos HTML y PHP

<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
?>
<h3>strpos() debe haber devuelto no falso</h3>
<p>Está usando Internet Explorer</p>
<?php
} else {
?>
<h3>strpos() debió devolver algo diferente de falso</h3>
<p>No está usando Internet Explorer</p>
<?php
}
?>

Un ejemplo del resultado de la secuencia de comandos podría ser:

<h3>strpos() debe haber devuelto falso</h3>
<p>Está usando Internet Explorer</p>

En vez de usar una sentencia PHP echo para demostrar algo, saltamos fuera del código PHP y escribimos solamente HTML. Este es un punto muy importante y potente que debemos observar aquí, y es que la fluidez lógica de la secuencia de comandos permanece intacta. Sólamente las partes donde hay bloques HTML serán enviadas al visor dependiendo del resultado que strstr() devuelva. En otras palabras, si la cadena MSIE fue encontrada o no.


Un tutorial sencillo
PHP Manual