Introducción a Zend Framework

 Aprendiendo Zend Framework

Apéndice

 Referencia de Zend Framework


  • Zend_Gdata
  • Zend_Http
  • Zend_InfoCard
  • Zend_Json
  • Zend_Layout
  • Zend_Ldap
  • Zend_Loader
  • Zend_Locale
  • Zend_Log
  • Zend_Mail
  • Zend_Markup
  • Zend_Measure
  • Zend_Memory
  • Zend_Mime
  • Zend_Navigation
  • Zend_Oauth
  • Zend_OpenId
  • Zend_Paginator
  • Zend_Pdf
  • Zend_ProgressBar
  • Zend_Queue
  • Zend_Reflection
  • Zend_Registry
  • Zend_Rest

  • Zend_Search_Lucene
  • Zend_Serializer
  • Zend_Server
  • Zend_Service
  • Zend_Session
  • Zend_Soap
  • Zend_Tag
  • Zend_Test
  • Zend_Text
  • Zend_TimeSync
  • Zend_Tool
  • Zend_Tool_Framework
  • Zend_Tool_Project
  • Zend_Translate
  • Zend_Uri
  • Zend_Validate
  • Zend_Version
  • Zend_View
  • Zend_Wildfire
  • Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Traducción al 26.9% - Actualizado el 2011-11-16 - Revisión 24249 - Versión ZF 1.11.x

    Capítulo 21. Zend_Config

    21.1. Introducción

    Zend_Config está diseñado para simplificar el acceso y el uso de datos de configuración dentro de aplicaciones. Provee una interfaz de usuario basada en propiedades de objetos anidadas para acceder a datos de configuración dentro del código de la aplicación. Los datos de configuración pueden venir de multitud de medios que soporten almacenamiento de datos de forma jerárquica. Actualmente Zend_Config provee adaptadores para datos de configuración que están almacenados en archivos de texto con Zend_Config_Ini y Zend_Config_Xml .

    Ejemplo 21.1. Usando Zend_Config Per Se

    Normalmente, se espera que los usuarios usen una de las clases adaptadoras como Zend_Config_Ini o Zend_Config_Xml , pero si los datos de configuración están disponibles en un array PHP , se puede simplemente pasar los datos al constructor Zend_Config para utilizar una interfaz simple orientada a objetos:

    // Dado un array de datos de configuración
    $configArray = array(
        
    'webhost'  => 'www.example.com',
        
    'database' => array(
            
    'adapter' => 'pdo_mysql',
            
    'params'  => array(
                
    'host'     => 'db.example.com',
                
    'username' => 'dbuser',
                
    'password' => 'secret',
                
    'dbname'   => 'mydatabase'
            
    )
        )
    );

    // Crea el objeto a partir de los datos de configuración
    $config = new Zend_Config($configArray);

    // Muestra un dato de configuración (resultado: 'www.example.com')
    echo $config->webhost;

    // Use los datos de configuración para conectarse a la base de datos
    $db Zend_Db::factory($config->database->adapter,
                           
    $config->database->params->toArray());

    // Uso alternativo: simplemente pase el objeto Zend_Config.
    // La Zend_Db factory sabe cómo interpretarlo.
    $db Zend_Db::factory($config->database);

    Como se ilustra en el ejemplo de arriba, Zend_Config provee una sintáxis de propiedades de objetos anidados para acceder a datos de configuración pasados a su constructor.

    Junto al acceso a valores de datos orientado a objetos, Zend_Config también tiene el método get() que devolverá el valor por defecto suministrado si el elemento de datos no existe. Por ejemplo:

    $host $config->database->get('host''localhost');

    Ejemplo 21.2. Usando Zend_Config con un Archivo de Configuración PHP

    A veces, es deseable usar un archivo de configuración puramente PHP . El código siguiente ilustra cómo podemos conseguir esto fácilmente:

    // config.php
    return array(
        
    'webhost'  => 'www.example.com',
        
    'database' => array(
            
    'adapter' => 'pdo_mysql',
            
    'params'  => array(
                
    'host'     => 'db.example.com',
                
    'username' => 'dbuser',
                
    'password' => 'secret',
                
    'dbname'   => 'mydatabase'
            
    )
        )
    );
    // Lectura de la configuración
    $config = new Zend_Config(require 'config.php');

    // Muestra un dato de configuración (resultado: 'www.example.com')
    echo $config->webhost;

    digg delicious meneame google twitter technorati facebook

    Comentarios

    Loading...