Algo Útil
Hagamos ahora algo que puede ser mas útil_ Vamos a chequear que clase de
navegador de la web utilizas_ Para hacerlo, vamos a mirar la información que el
navegador nos manda como parte de su requesta HTTP_ Esta información es guardada
en una variable_ Las variables siempre
comiensan con un signo de dolar ("$") en PHP_ La variable que vamos a utilizar en esta
situación es $_SERVER["HTTP_USER_AGENT"]_
Nota:
$_SERVER es una variable reservada por
PHP que contiene toda la información del servidor de web_ Es conocida como
Autoglobal (o Superglobal)_
Lee el manual en la sección titulada Autoglobals para mas
información_ Estas son variables especiales que son introducidas en la
versión 4_1_0 de PHP_ Antes
podíamos usar los, $HTTP_*_VARS arrays, tales como
$HTTP_SERVER_VARS_
Aunque estos han sido despreciados, estas antiguas variables todavía existen_
(También puedes mirar las notas relacionadas acerca del viejo código_)
Para poder ver esta variable solo necesitas:
Ejemplo 2_2_ Imprimiendo una variable (Elemento del Array) <?php echo $_SERVER["HTTP_USER_AGENT"]; ?> |
Un ejemplo de los resultados de este programa seria:
Mozilla/4_0 (compatible; MSIE 5_01; Windows NT 5_0) |
|
Hay muchas clases de variables en PHP_ En el
ejemplo anterior imprimimos un Array_
Los Arrays pueden ser muy útiles
$_SERVER es simplemente una variable que es automáticamente
disponible para ti en PHP_ Puedes obtener una lista en la sección titulada Variables Reservadas del manual, o puedes crear una
lista completa creando un archivo como a continuación:
Ejemplo 2_3_ Ver todas las variables predefinidas con phpinfo() |
Si tu abres este archivo con tu navegador, puedes ver una página con
información hacerca de PHP, junto a una lista de todas las variables que puedes
usar_
Puedes usar mas de un declaración PHP dentro de una tag PHP, y crear
pequeños segmentos de código que pueden hacer mas que un "echo"_ Por
ejemplo, si queremos detectar por "Internet Explorer" haríamos algo así:
Ejemplo 2_4_ Ejemplos usando estructuras de control
y funciones <?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
echo "Estas usando Internet Explorer<br />";
}
?> |
Un ejemplo de los resultado del script puede ser:
Estas usando Internet Explorer<br /> |
|
Aquí introduciremos un par de conceptos nuevos_ Tenemos una
"if" declaración_
Si estas familiarizado con los la sintaxis básica del lenguaje "C", esto se vera
lógico, Pero si tu no entiendes "C" o otros lenguajes de programación
donde encuentras la sintaxis usada anteriormente, probablemente deberías
conseguir un libro que te introduzca mejor a PHP, y lee los primeros capítulos, o
también puedes ver la parte del manual titulada referencias al lenguaje_
Puedes encontrar una lista de libros acerca de PHP en http://www_php_net/books_php_
El segundo concepto que introducimos fue el concepto llamado
strstr()_ strstr() es una función integrada
en PHP que busca un cadena (string) dentro de otra cadena (string) mas larga_ En el caso
anterior estamos buscando por "MSIE" dentro de
$_SERVER["HTTP_USER_AGENT"]_ Si la cadena (string) fue encontrada, la
función devolverá verdadero ("TRUE"),la declaración
"if" se evalúa a verdadero
("TRUE") y el código adentro de las {braces} es ejecutado_ De otra manera no
lo es ejecutado_ Tomate la libertad de crear ejemplos similares usando "if", "else" ("de otra manera"), y otras funciones
como strtoupper() y strlen()_ Cada página
del manual contiene ejemplos que puedes usar_ Si no estas seguro acerca de como usar estas
funciones, te recomiendo que leas las páginas del manual tituladas
Como leer una función definida y la sección relacionada a Funciones
en PHP
Podemos dar paso mas y demostrar como podéis saltar adentro y afuera del modo PHP
en el medio de un bloque de código PHP
Ejemplo 2_5_ Mesclando los modos HTML y PHP <?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
?>
<h3>strstr tiene que haber devuelto verdadero </h3>
<center><b>Estas usando Internet Explorer</b></center>
<?php
} else {
?>
<h3>strstr tiene que haber devuelto falso</h3>
<center><b>No estas usando Internet Explorer</b></center>
<?php
}
?> |
Un ejemplo de los resultados de este script pueden ser:
<h3>strstr tiene que haber devuelto verdadero </h3>
<center><b>Estas usando Internet Explorer</b></center> |
|
En vez de usar una declaración PHP "echo" para demostrar algo, saltamos fuera del
código PHP y escribimos HTML puro_ Este es un punto muy importante y potente que
debemos observar aquí, este es que la fluidez lógica del script esta
intacta_
Solamente las partes donde hay HTML serán mandadas a tu navegador dependiendo en
los resultados questrstr() ah devuelto, si fue (verdadero [TRUE], o
falso [FALSE])_ En otras palabras, si la cadena (string) MSIE fue
encontrada o no_