Descargar

Variables y constantes (página 2)


Partes: 1, 2

En este ejemplo hemos definido tres variables, $a, $b y $c y con la instrucción echo hemos impreso el valor que contenían, insertando un salto de línea entre ellas.

Existen 2 tipos de variables, las variables locales que solo pueden ser usadas dentro de funciones y las variables globales que tienen su ámbito de uso fuera de las funciones, podemos acceder a una variable global desde una función con la instrucción global nombre_variable;

Variables asignadas por referencia

En PHP también podemos asignar variables por referencia. En ese caso no se les asigna un valor, sino otra variable, de tal modo que las dos variables comparten espacio en memoria para el mismo dato.

La notación para asignar por referencia es colocar un "&" antes del nombre de la variable.

Esto dará como resultado la visualización dos veces del string "Mi nombre es Bob".

Algo como:

  • Mi nombre es Bob

  • Mi nombre es Bob

Formas en que una variable de PHP puede ver variado su tipo

  • PHP no requiere que indiquemos el tipo que va a contener una variable, sino que lo deduce del valor que asignemos a la variable.

  • Asimismo, se encarga de actualizar automáticamente el tipo de la variable cada vez que le asignamos un nuevo valor.

  • Por ello, para cambiar el tipo de una variable simplemente le asignamos un valor con un nuevo tipo.

  • Nota: Se excluyen en este caso el cambio de variables a tipo Array porque la sintaxis puede resultar ambigua al expresar ese código, es decir, puede darse el caso de que una línea de código pueda significar dos cosas.

$a = "1";//$a es una cadena$a[0] = "f"; //¿Estamos editando el índice de la cadena o forzando a array?

Forzado

  • En cualquier caso, podemos forzar una variable para que cambie de tipo con la función setType().

setType($variable,"nuevo_tipo");

  • La función setType() actualiza el tipo de $variable a "nuevo_tipo" y devuelve un boleano indicando si hubo éxito o no en la conversión.

Entre "nuevo_tipo" tenemos:

  • "integer"

  • "double"

  • "string"

  • "array"

  • "object"

También podemos hacer que una variable se comporte como un tipo determinado forzándola, de la misma manera a como se hace en el lenguaje C.

$variable = "23";$variable = (int) $variable;

Los forzados permitidos son:

  • (int), (integer) – Fuerza a entero (integer)

  • (real), (double), (float) – Fuerza a doble (double)

  • (string) – Fuerza a cadena (string)

  • (array) – Fuerza a array (array)

  • (object) – Fuerza a objeto (object)

Constantes

PHP define varias constantes y proporciona un mecanismo para definir más en tiempo de ejecución. Las constantes son como las variables, salvo por las dos circunstancias de que las constantes deben ser definidas usando la función define (), y que no pueden ser redefinidas más tarde con otro valor.

Ejemplo definiendo constantes

Las constantes predefinidas (siempre disponibles) son:

__FILE__

El nombre del archivo de comandos que está siendo interpretado actualmente. Si se usa dentro de un archivo que ha sido incluido o requerido, entonces se da el nombre del archivo incluido, y no el nombre del archivo padre.

__LINE__

El número de línea dentro del archivo que está siendo interpretado en la actualidad. Si se usa dentro de un archivo incluido o requerido, entonces se da la posición dentro del archivo incluido.

PHP_VERSION

La cadena que representa la versión del analizador de PHP en uso en la actualidad;

PHP_OS

El nombre del sistema operativo en el cuál se ejecuta el analizador PHP; e.g. "Linux".

TRUE

Valor verdadero.

FALSE

Valor falso.

E_ERROR

Denota un error distinto de un error de interpretación del cual no es posible recuperarse.

E_WARNING

Denota una condición donde PHP reconoce que hay algo erróneo, pero continuará de todas formas; pueden ser capturados por el propio archivo de comandos. Un ejemplo sería una inválida regexp en ereg().

E_PARSE

El intérprete encontró sintaxis inválida en el archivo de comandos. La recuperación no es

posible.

E_NOTICE

Ocurrió algo que pudo ser o no un error. La ejecución continúa. Los ejemplos incluyen usar una cadena sin comillas como un índice "hash", o acceder a una variable que no ha sido inicializada.

Las constantes E_* se usan típicamente con la función error_reporting() para configurar el nivel de informes de error.

Se pueden definir constantes adicionales usando la función define().

Nótese que son constantes, no macros tipo C; con una constante sólo se pueden representar datos escalares válidos.

Ejemplo usando __FILE__ y __LINE__

Comentarios en PHP

¿Que son los comentarios? Los comentarios se usan para dejar ciertas aclaraciones, las cuales usaremos nosotros mismos. Resulta fácil cuando un código esta correctamente comentado…Para dejar comentarios (que no se procesan como código) en PHP hay tres diferentes maneras

  • 1) Con la doble barra. Así: //Esto seria un comentario…

  • 2) Con el carácter numeral. Así: #Este comentario es como el anterior

  • 3) Con la barra y el asterisco. Así: /* Entre medio de esto hay un comentario… */

Veamos dentro de los Tags de PHP…

  • Bueno, no hay más nada que decir sobre los comentarios, salvo que su uso en exeso puede ser mal visto.

  • Su utilización no debe entorpecer al código del script. Pero siempre que se crea util, es bueno poner un comentario…

Operadores Aritméticos

Los operadores de PHP son muy parecidos a los de C y JavaScript, si usted conoce estos lenguajes le resultaran familiares y fáciles de reconocer.

Estos son los operadores que se pueden aplicar a las variables y constantes numéricas.

Operador

Nombre

Ejemplo

Descripción

+

Suma

5 + 6

Suma dos números

Resta

7 – 9

Resta dos números

*

Multiplicación

6 * 3

Multiplica dos números

/

División

4 / 8

Divide dos números

%

Módulo

7 % 2

Devuelve el resto de dividir ambos números, en este ejemplo el resultado es 1

++

Suma 1

$a++

Suma 1 al contenido de una variable.

Resta 1

$a–

Resta 1 al contenido de una variable.

EJEMPLO DE OPERADORES ARITMETICOS

  Ejemplo de PHP

Variables de sistema en PHP

  • Qué son y para qué sirven estas variables del servidor. Comentamos algunas de las más útiles.

  • Dada su naturaleza de lenguaje de lado servidor, PHP es capaz de darnos acceso a toda una serie de variables que nos informan sobre nuestro servidor y sobre el cliente.

  • La información de estas variables es atribuida por el servidor y en ningún caso nos es posible modificar sus valores directamente mediante el script.

  • Para hacerlo es necesario influir directamente sobre la propiedad que definen.

  • Existen multitud de variables de este tipo, algunas sin utilidad aparente y otras realmente interesantes y con una aplicación directa para nuestro sitio web.

  • Aquí los enumeramos algunas de estas variables y la información que nos aportan:

Variable

Descripción

$HTTP_USER_AGENT

Nos informa principalmente sobre el sistema operativo y tipo y versión de navegador utilizado por el internauta. Su principal utilidad radica en que, a partir de esta información, podemos redireccionar nuestros usuarios hacia páginas optimizadas para su navegador o realizar cualquier otro tipo de acción en el contexto de un navegador determinado.

$HTTP_ACCEPT_LANGUAGE

Nos devuelve la o las abreviaciones de la lengua considerada como principal por el navegador. Esta lengua o lenguas principales pueden ser elegidas en el menú de opciones del navegador. Esta variable resulta también extremadamente útil para enviar al internauta a las páginas escritas en su lengua, si es que existen.

$HTTP_REFERER

Nos indica la URL desde la cual el internauta ha tenido acceso a la página. Muy interesante para generar botones de "Atrás" dinámicos o para crear nuestros propios sistemas de estadísticas de visitas.

$PHP_SELF

Nos devuelve una cadena con la URL del script que está siendo ejecutado. Muy interesante para crear botones para recargar la página.

$HTTP_GET_VARS

Se trata de un array que almacena los nombres y contenidos de las variables enviadas al script por URL o por formularios GET

$HTTP_POST_VARS

Se trata de un array que almacena los nombres y contenidos de las variables enviadas al script por medio de un formulario POST

$HTTP_COOKIE_VARS

Se trata de un array que almacena los nombres y contenidos de las cookies. Veremos qué son más adelante.

$PHP_AUTH_USER

Almacena la variable usuario cuando se efectúa la entrada a páginas de acceso restringido. Combinado con $PHP_AUTH_PW resulta ideal para controlar el acceso a las páginas internas del sitio.

$PHP_AUTH_PW

Almacena la variable password cuando se efectúa la entrada a páginas de acceso restringido. Combinado con $PHP_AUTH_USER resulta ideal para controlar el acceso a las páginas internas del sitio.

$REMOTE_ADDR

Muestra la dirección IP del visitante.

$DOCUMENT_ROOT

Nos devuelve el path físico en el que se encuentra alojada la página en el servidor.

$PHPSESSID

Guarda el identificador de sesión del usuario. Veremos más adelante en qué consisten las sesiones.

  • No todas estas variables están disponibles en la totalidad de servidores o en determinadas versiones de un mismo servidor.

  • Además, algunas de ellas han de ser previamente activadas o definidas por medio de algún acontecimiento.

  • Así, por ejemplo, la variable $HTTP_REFERER no estará definida a menos que el internauta acceda al script a partir de un enlace desde otra página.

Variables superglobales A partir de PHP 4.1.0, se dispone de un conjunto de varibles de tipo array que mantienen información del sistema, llamadas superglobales porque se definen automáticamente en un ámbito global. Estas variables hacen referencia a las mismas que se accedían antes por medio de los arrays del tipo $HTTP_*_VARS. Éstas todavía existen, aunque a partir de PHP 5.0.0 se pueden desactivar con la directiva register_long_arrays. La lista de estas variables, extraída directamente de la documentación de PHP es la siguiente:

  • $GLOBALS

Contiene una referencia a cada variable disponible en el espectro de las variables del script. Las llaves de esta matriz son los nombres de las variables globales. $GLOBALS existe dese PHP 3.

  • $_SERVER

Variables definidas por el servidor web ó directamente relacionadas con el entorno en don el script se esta ejecutando. Análoga a la antigua matriz $HTTP_SERVER_VARS (la cual está todavía disponible, aunque no se use).

  • $_GET

Variables proporcionadas al script por medio de HTTP GET. Análoga a la antigua matriz $HTTP_GET_VARS (la cual está todavía disponible, aunque no se use).

  • $_POST

Variables proporcionadas al script por medio de HTTP POST. Análoga a la antigua matriz $HTTP_POST_VARS (la cual está todavía disponible, aunque no se use).

  • $_COOKIE

Variables proporcionadas al script por medio de HTTP cookies. Análoga a la antigua matriz $HTTP_COOKIE_VARS (la cual está todavía disponible, aunque no se use).

  • $_FILES

Variables proporcionadas al script por medio de la subida de ficheros via HTTP . Análoga a la antigua matriz $HTTP_POST_FILES (la cual está todavía disponible, aunque no se use). Vea también Subiendo ficheros por método POST para más información.

  • $_ENV

Variables proporcionadas al script por medio del entorno. Análoga a la antigua matriz $HTTP_ENV_VARS (la cual está todavía disponible, aunque no se use).

  • $_REQUEST

Variables proporcionadas al script por medio de cuaquier mecanismo de entrada del usuario y por lo tanto no se puede confiar en ellas. La presencia y el orden en que aparecen las variables en esta matriz es definido por la directiva de configuración variables_order. Esta matriz no tiene un análogo en versiones anteriores a PHP 4.1.0. Vea también import_request_variables().

  • $_SESSION

Variables registradas en la sesión del script. Análoga a la antigua matriz $HTTP_SESSION_VARS (la cual está todavía disponible, aunque no se use). Vea también la sección Funciones para el manejo de sesiones para más información.

 

 

 

Ing. Pablo Cesar Ttito C.

edu.redBLOGGER

http://www.solucionesphp.blogspot.com/

Envía tu comentario

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente