Warning: mysql_get_server_info(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /home/content/22/5322322/html/agevaled/wp-content/plugins/contus-hd-flv-player/install.php on line 26

Warning: mysql_get_server_info(): A link to the server could not be established in /home/content/22/5322322/html/agevaled/wp-content/plugins/contus-hd-flv-player/install.php on line 26
PHP – Tipos de datos | AVLog - AgeValed



Programación

06/08/2011

PHP – Tipos de datos

En la segunda entrega de esta seguidilla de post, vamos a hablar en los tipos primitivos que soporta PHP. Este post sera un resumen hecho de la pagina de PHP. Los tipos de datos se dividen en las siguientes categorías: Escalares, Compuestos, Especiales y Pseudo-Tipos; dentro de cada uno de ellos se encuentran los distintos tipos de datos que usaremos con regularidad. Tengan en cuenta que por lo general PHP no necesita que se le especifique a una variable que tipo de dato va a ser, en algunos casos particulares si, pero por lo general no es necesario.

Espero que les sea útil, y cualquier cosa me consultan. Por lo menos a mi me es útil para refrescar conocimientos, aprender pequeños detalles que uno no había prestado atención con anterioridad, en fin… Empecemos!

  • Tipos Escalares:
    • BooleanLink
      • El boolean expresa un valor de verdad, puede ser TRUE o FALSE
    • IntegerLink
      • Un entero o integer es un número del conjunto Z = {…, -2, -1, 0, 1, 2, …}. Pueden ser especificados en notación decimal (base 10), hexadecimal (base 16) u octal (base 8).
    • FloatLink
      • Los números de punto flotante (también conocidos como “flotantes”, “dobles” o “números reales”) pueden ser especificados usando cualquiera de las siguientes sintaxis: $a = 1.234;  $b = 1.2e3;  $c = 7E-10;
    • String Link
      • Un string es una serie de caracteres, y por lo tanto, un caracter es lo mismo que un byte. Es decir, hay exactamente 256 diferentes caracteres posibles. Esto implica tambien que PHP no tiene soporte nativo para Unicode. Consulte utf8_encode() y utf8_decode() para informarse de la funcionalidad básica de Unicode.
      • Sintaxis, un string puede especificase de cuatro formas diferente.
        • Comillas Simples
          • echo ‘Esto es una cadena sencilla’;
        • Comillas Dobles – Si un string está encerrado entre comillas dobles (“), PHP interpretará más sentencias de escape como caracteres especiales:
          • echo “Esto es una $test”;
        • Sintaxis Heredoc – Una tercera forma de delimitar strings es mediante la sintaxis heredoc: <<<. Después de este operador, se deberá ofrecer un identificador y después una nueva línea. A continuación va el propio string, y para cerrar la notación se pone el mismo identificador.
          • $str = <<
        • Sintaxis Nowdoc – Nowdocs son a las cadenas con comillas simples lo mismo que Heredoc lo es a las comillas dobles. Una cadena nowdoc se especifica de forma análoga a la heredoc, pero no se realiza ningún análisis dentro de nowdoc. Esta construcción es ideal para embeber codigo PHP o grandes fragmentos de texto sin necesidad de escaparlo. Comparte algunas características comunes con la construcción SGML , donde se declara un fragmento de texto que no debe ser analizado.
          • $str = <<<'EOD' Ejemplo de una cadena expandida en varias líneas empleando la sintaxis nowdoc. EOD;
  • Tipos Compuestos:
    • ArrayLink
      • Un array (matriz) en PHP es en realidad un mapa ordenado. Un mapa es un tipo de datos que asocia valores con claves. Este tipo es optimizado para varios usos diferentes; puede ser usado como una matriz real, una lista (vector), tabla asociativa (caso particular de implementación de un mapa), diccionario, colección, pila, cola y probablemente más. Ya que los valores de un array pueden ser otros arrays, también es posible crear árboles y arrays multidimensionales.
      • Sintaxis Asignación:
        • $arr = array(“foo” => “bar”, 12 => true);
        • $arr[“foo”] = “bar”;
        • $arr[] = “bar”;
      • Sintaxis print:
        • echo $arr[“foo”];
        • print_r($arr);
        • var_dump($arr);
    • ObjectLink
      • Nota: Este es un tema bastante complejo, por lo tanto sera tratado en otro post, cuando sea creado se agregara el link acá!
      • Inicialización:
        • Para crear un nuevo object, utilice la declaración new para instanciar una clase.
  • Tipos Especiales:
    • Resource – Link
      • Un valor tipo resource es una variable especial, que contiene una referencia a un recurso externo. Los recursos son creados y usados por funciones especiales. Vea el apéndice para un listado de todas estas funciones y los tipos resource correspondientes.
      • Conversión a recurso:
        • Dado que las variables resource contienen gestores especiales a archivos abiertos, conexiones con bases de datos, áreas de pintura de imágenes y cosas por el estilo, la conversión a tiporesource carece de sentido
      • Liberación de recursos:
        • Gracias al sistema de conteo de referencias introducido con el Motor Zend de PHP 4, un recurso que ya no es referenciado es detectado automáticamente, y es liberado por el recolector de basura. Por esta razón, rara vez se necesita liberar la memoria manualmente.
    • NULL Link
      • El valor especial NULL representa una variable sin valor. NULL es el unico posible valor de tipo NULL.
      • Una variable es considerada null si:
        • Se le ha asignado la constante NULL.
        • No se ha establecido en un valor todavía.
        • Se ha unset().
  • Y también, por razones de legalidad, existen los pseudo-tipos:
    • MixedLink
      • Mixed indica que un parámetro puede aceptar múltiples tipos (pero no necesariamente todos).
    • NumberLink
      • Number indica que un parámetro puede ser tanto un integer como un float.
    • CallbackLink
      • Algunas funciones como call_user_func() o usort() pueden aceptar como parámetro funciones de devolución de llamada definidas por el usuario. Las funciones de devolución de llamada no sólo pueden ser funciones simples, sino también pueden ser métodos object, incluyendo métodos de clases estáticas.
      • Una función de PHP puede ser pasada por su nombre como un string. Cualquier función incorporada o definida por el usuario puede ser usada, excepto los constructores de lenguaje como:array()echo()empty()eval()exit()isset()list()print() o unset().
      • Un método de un object instanciado puede ser pasado como un array conteniendo un object en el índice 1 y el nombre del método en el índice 1.
      • Los métodos de clases estáticas también pueden ser pasdos sin instanciar un object de la clase pasando en el índice 0 el nombre de la clase en lugar del object.
      • Junto a las típicas funciones definidas por el usuario, tambien se puede usar create_function() para crear una función de devolución de llamada anónima. Desde PHP 5.3.0 también es posible pasar un cierre como un parámetro de devolución.
    • VoidLink
      • void como un tipo de variable de retorno significa que el valor de retorno no es útil. void en una lista de parámetros significa que la función no acepta ningún parámetro.
      • $… en el prototipo de funciones significa and so on. Este nombre de variable se usa cuando una función puede tomar un número infinito de argumentos.

Los tipos de una variable usualmente no son declaradas por el programador, es decidido en tiempo de ejecución por PHP dependiendo del contexto en el que se este utilizando la variable.

Espero que les sea util! y espero sus comentarios al respecto…



About the Author

AgeValed
Pablo Ignacio de la Vega Ibañez, también conocido en algunos lugares como AgeValed, el creador de este blog. Actualmente estoy trabajando como Líder Técnico y Supervisor de Equipo en el área de desarrollo PHP.




 
 

 
PHP

Doctrine2 – Getting Started Issues

Luego de querer instalar y hacer funcionar doctrine en nuestro querido y amado Windows, me encontré con un par de problemas, y por lo que vi en internet a varios le paso lo mismo, vamos a tomar como ejemplo el Doctrine –...
by AgeValed
1

 
 
PHP

Zend Framework – Almacenamiento de sesión en base de datos

En este mini tutorial voy a mostrarles como guardar la sesión en base de datos con ZF 1, esto es muy util para manejo de sesiones en un entorno con múltiples servidores. Material Relacionado Zend_Session_SaveHandler_DbTable Z...
by AgeValed
0

 
 

PHP Conference Argentina 2013

El 4 y 5 de Octubre se celebrará, en la Ciudad de Buenos Aires (Argentina), la PHP Conference Argentina, edición local de la conferencia PHP más popular. Esta edición no solamente está destinada a los programadores PHP, ...
by AgeValed
0

 

 

PHP 5.4.0 liberado!

Les comento que ya se encuentra la nueva versión de PHP liberada, la versión 5.4.0, luego de varios updates que se hicieron a la versión PHP 5.3 ya contamos con nuevas versión que incluye (según ellos) un gran núme...
by AgeValed
0

 
 
PHP

PHP – Errores

En este resumen voy a escribir sobre los el control y registro de los errores en PHP. PHP nos permite definir nuestras reglas para controlar los errores, crear errores personificados o como serán registrados/notificados. Tipos...
by AgeValed
0

 




4 Comentarios


  1. […] el turno de escribir el tercer post de la serie de PHP, ya escribí sobre Sintaxis básicas, Tipos de datos y los Operadores. Este es el turno de hacer un resumen de las estructuras de […]


  2. […] Solo se puede definir como constantes valores escalares (boolean, integer, float y string). Se puede definir resource en constantes, pero debería ser evitado, porque puede causar resultados inesperados. Para ver los diferentes tipos de datos entra al post de PHP – Tipo de Datos. […]


  3. blanca flor hdz

    hola buenas noches, estaba investigando sobre los tipos de datos no escalares pero no encuentro nada… tienen alguna otra forma de llamarse?? estaba viendo tu post y se me hizo muy interesante es por eso que pregunto sobre los no escalares, espero me puedas ayudar gracias c:



Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*