国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim php教程 PHP開發(fā) Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Dec 27, 2016 pm 02:19 PM
zend framework

Das Beispiel in diesem Artikel beschreibt die Anwendungsnutzung des Zend Framework-Tutorials. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Zend_Application ist die Kernkomponente von Zend Framework. Zend_Application stellt grundlegende Funktionen für Zend Framework-Anwendungen bereit und ist der Einstiegspunkt des Programms. Seine Hauptfunktionen sind zwei: Laden und Konfigurieren der PHP-Umgebung (einschlie?lich automatischem Laden) und Booten der Anwendung.

Typischerweise wird der Zend_Application-Konstruktor über Konfigurationsoptionen konfiguriert, er kann aber auch vollst?ndig mithilfe einer benutzerdefinierten Methode konfiguriert werden. Nachfolgend finden Sie zwei Anwendungsf?lle.

Zend_Application-Konfigurationsoptionen

Konstruktor:

/**
 * Constructor
 *
 * Initialize application. Potentially initializes include_paths, PHP
 * settings, and bootstrap class.
 *
 * @param string          $environment
 * @param string|array|Zend_Config $options String path to configuration file, or array/Zend_Config of configuration options
 * @throws Zend_Application_Exception When invalid options are provided
 * @return void
 */
public function __construct($environment, $options = null)
{
  $this->_environment = (string) $environment;
  require_once 'Zend/Loader/Autoloader.php';
  $this->_autoloader = Zend_Loader_Autoloader::getInstance();
  if (null !== $options) {
    if (is_string($options)) {
      $options = $this->_loadConfig($options);
    } elseif ($options instanceof Zend_Config) {
      $options = $options->toArray();
    } elseif (!is_array($options)) {
      throw new Zend_Application_Exception('Invalid options provided; must be location of config file, a config object, or an array');
    }
    $this->setOptions($options);
  }
}

Zend_Application-Konfigurationsmethode

1. Konfigurationsdatei verwenden

Allgemeine Konfigurationsoptionen

Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Hinweis:

Bei Optionsnamen wird die Gro?-/Kleinschreibung nicht beachtet.

Zend_Application-Methode

Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Ausführliche Erl?uterung der Anwendungsnutzungsbeispiele im Zend Framework-Tutorial

Konfigurationsbeispiel:

Standard:

// Create application, bootstrap, and run
$application = new Zend_Application(
  APPLICATION_ENV,
  APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
      ->run();
Quellcode

<?php
class Zend_Application
{  /**
   * Constructor
   *
   * Initialize application. Potentially initializes include_paths, PHP
   * settings, and bootstrap class.
   *
   * @param string          $environment
   * @param string|array|Zend_Config $options String path to configuration file, or array/Zend_Config of configuration options
   * @throws Zend_Application_Exception When invalid options are provided
   * @return void
   */
  public function __construct($environment, $options = null)
  {
    $this->_environment = (string) $environment;
    require_once &#39;Zend/Loader/Autoloader.php&#39;;
    $this->_autoloader = Zend_Loader_Autoloader::getInstance();
    if (null !== $options) {
      if (is_string($options)) {
        $options = $this->_loadConfig($options);
      } elseif ($options instanceof Zend_Config) {
        $options = $options->toArray();
      } elseif (!is_array($options)) {
        throw new Zend_Application_Exception(&#39;Invalid options provided; must be location of config file, a config object, or an array&#39;);
      }
      $this->setOptions($options);
    }
  }
  /**
   * Retrieve current environment
   *
   * @return string
   */
  public function getEnvironment()
  {
    return $this->_environment;
  }
  /**
   * Retrieve autoloader instance
   *
   * @return Zend_Loader_Autoloader
   */
  public function getAutoloader()
  {
    return $this->_autoloader;
  }
  /**
   * Set application options
   *
   * @param array $options
   * @throws Zend_Application_Exception When no bootstrap path is provided
   * @throws Zend_Application_Exception When invalid bootstrap information are provided
   * @return Zend_Application
   */
  public function setOptions(array $options)
  {
    if (!empty($options[&#39;config&#39;])) {
      if (is_array($options[&#39;config&#39;])) {
        $_options = array();
        foreach ($options[&#39;config&#39;] as $tmp) {
          $_options = $this->mergeOptions($_options, $this->_loadConfig($tmp));
        }
        $options = $this->mergeOptions($_options, $options);
      } else {
        $options = $this->mergeOptions($this->_loadConfig($options[&#39;config&#39;]), $options);
      }
    }
    $this->_options = $options;
    $options = array_change_key_case($options, CASE_LOWER);
    $this->_optionKeys = array_keys($options);
    if (!empty($options[&#39;phpsettings&#39;])) {
      $this->setPhpSettings($options[&#39;phpsettings&#39;]);
    }
    if (!empty($options[&#39;includepaths&#39;])) {
      $this->setIncludePaths($options[&#39;includepaths&#39;]);
    }
    if (!empty($options[&#39;autoloadernamespaces&#39;])) {
      $this->setAutoloaderNamespaces($options[&#39;autoloadernamespaces&#39;]);
    }
    if (!empty($options[&#39;autoloaderzfpath&#39;])) {
      $autoloader = $this->getAutoloader();
      if (method_exists($autoloader, &#39;setZfPath&#39;)) {
        $zfPath  = $options[&#39;autoloaderzfpath&#39;];
        $zfVersion = !empty($options[&#39;autoloaderzfversion&#39;])
              ? $options[&#39;autoloaderzfversion&#39;]
              : &#39;latest&#39;;
        $autoloader->setZfPath($zfPath, $zfVersion);
      }
    }
    if (!empty($options[&#39;bootstrap&#39;])) {
      $bootstrap = $options[&#39;bootstrap&#39;];
      if (is_string($bootstrap)) {
        $this->setBootstrap($bootstrap);
      } elseif (is_array($bootstrap)) {
        if (empty($bootstrap[&#39;path&#39;])) {
          throw new Zend_Application_Exception(&#39;No bootstrap path provided&#39;);
        }
        $path = $bootstrap[&#39;path&#39;];
        $class = null;
        if (!empty($bootstrap[&#39;class&#39;])) {
          $class = $bootstrap[&#39;class&#39;];
        }
        $this->setBootstrap($path, $class);
      } else {
        throw new Zend_Application_Exception(&#39;Invalid bootstrap information provided&#39;);
      }
    }
    return $this;
  }
  /**
   * Retrieve application options (for caching)
   *
   * @return array
   */
  public function getOptions()
  {
    return $this->_options;
  }
  /**
   * Is an option present?
   *
   * @param string $key
   * @return bool
   */
  public function hasOption($key)
  {
    return in_array(strtolower($key), $this->_optionKeys);
  }
  /**
   * Retrieve a single option
   *
   * @param string $key
   * @return mixed
   */
  public function getOption($key)
  {
  }
  /**
   * Merge options recursively
   *
   * @param array $array1
   * @param mixed $array2
   * @return array
   */
  public function mergeOptions(array $array1, $array2 = null)
  {
    if (is_array($array2)) {
      foreach ($array2 as $key => $val) {
        if (is_array($array2[$key])) {
          $array1[$key] = (array_key_exists($key, $array1) && is_array($array1[$key]))
                 ? $this->mergeOptions($array1[$key], $array2[$key])
                 : $array2[$key];
        } else {
          $array1[$key] = $val;
        }
      }
    }
    return $array1;
  }
  /**
   * Set PHP configuration settings
   *
   * @param array $settings
   * @param string $prefix Key prefix to prepend to array values (used to map . separated INI values)
   * @return Zend_Application
   */
  public function setPhpSettings(array $settings, $prefix = &#39;&#39;)
  {
    foreach ($settings as $key => $value) {
      $key = empty($prefix) ? $key : $prefix . $key;
      if (is_scalar($value)) {
        ini_set($key, $value);
      } elseif (is_array($value)) {
        $this->setPhpSettings($value, $key . &#39;.&#39;);
      }
    }
    return $this;
  }
  /**
   * Set include path
   *
   * @param array $paths
   * @return Zend_Application
   */
  public function setIncludePaths(array $paths)
  {
    $path = implode(PATH_SEPARATOR, $paths);
    set_include_path($path . PATH_SEPARATOR . get_include_path());
    return $this;
  }
  /**
   * Set autoloader namespaces
   *
   * @param array $namespaces
   * @return Zend_Application
   */
  public function setAutoloaderNamespaces(array $namespaces)
  {
    $autoloader = $this->getAutoloader();
    foreach ($namespaces as $namespace) {
      $autoloader->registerNamespace($namespace);
    }
    return $this;
  }
  /**
   * Set bootstrap path/class
   *
   * @param string $path
   * @param string $class
   * @return Zend_Application
   */
  public function setBootstrap($path, $class = null)
  {
    // setOptions() can potentially send a null value; specify default
    // here
    if (null === $class) {
      $class = &#39;Bootstrap&#39;;
    }
    if (!class_exists($class, false)) {
      require_once $path;
      if (!class_exists($class, false)) {
        throw new Zend_Application_Exception(&#39;Bootstrap class not found&#39;);
      }
    }
    $this->_bootstrap = new $class($this);
    if (!$this->_bootstrap instanceof Zend_Application_Bootstrap_Bootstrapper) {
      throw new Zend_Application_Exception(&#39;Bootstrap class does not implement Zend_Application_Bootstrap_Bootstrapper&#39;);
    }
    return $this;
  }
  /**
   * Get bootstrap object
   *
   * @return Zend_Application_Bootstrap_BootstrapAbstract
   */
  public function getBootstrap()
  {
    if (null === $this->_bootstrap) {
      $this->_bootstrap = new Zend_Application_Bootstrap_Bootstrap($this);
    }
    return $this->_bootstrap;
  }
  /**
   * Bootstrap application
   *
   * @param null|string|array $resource
   * @return Zend_Application
   */
  public function bootstrap($resource = null)
  {
    $this->getBootstrap()->bootstrap($resource);
    return $this;
  }
  /**
   * Run the application
   *
   * @return void
   */
  public function run()
  {
    $this->getBootstrap()->run();
  }
  /**
   * Load configuration file of options
   *
   * @param string $file
   * @throws Zend_Application_Exception When invalid configuration file is provided
   * @return array
   */
  protected function _loadConfig($file)
  {
    $environment = $this->getEnvironment();
    $suffix   = pathinfo($file, PATHINFO_EXTENSION);
    $suffix   = ($suffix === &#39;dist&#39;)
           ? pathinfo(basename($file, ".$suffix"), PATHINFO_EXTENSION)
           : $suffix;
    switch (strtolower($suffix)) {
      case &#39;ini&#39;:
        $config = new Zend_Config_Ini($file, $environment);
        break;
      case &#39;xml&#39;:
        $config = new Zend_Config_Xml($file, $environment);
        break;
      case &#39;json&#39;:
        $config = new Zend_Config_Json($file, $environment);
        break;
      case &#39;yaml&#39;:
      case &#39;yml&#39;:
        $config = new Zend_Config_Yaml($file, $environment);
        break;
      case &#39;php&#39;:
      case &#39;inc&#39;:
        $config = include $file;
        if (!is_array($config)) {
          throw new Zend_Application_Exception(&#39;Invalid configuration file provided; PHP file does not return array value&#39;);
        }
        return $config;
        break;
      default:
        throw new Zend_Application_Exception(&#39;Invalid configuration file provided; unknown config type&#39;);
    }
    return $config->toArray();
  }
}
Ich hoffe, dieser Artikel wird für alle hilfreich sein, die sich mit PHP-Programmierung befassen.

Ausführlichere Erl?uterungen zu Anwendungsnutzungsbeispielen in Zend Framework-Tutorials und verwandten Artikeln finden Sie auf der chinesischen PHP-Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276
Verwendung von Zend Framework mit PHP: Kurzanleitung Verwendung von Zend Framework mit PHP: Kurzanleitung Jun 21, 2023 am 08:58 AM

Verwendung von ZendFramework mit PHP: Kurzanleitung ZendFramework ist ein Open-Source-Webanwendungs-Framework auf PHP-Basis, das leistungsstark und leicht erweiterbar ist. ZendFramework enth?lt viele nützliche Komponenten, die Ihnen beim Erstellen effizienter Webanwendungen helfen k?nnen. In diesem Artikel wird die Verwendung von ZendFramework in PHP vorgestellt, um Ihnen den schnellen Einstieg zu erleichtern. Installieren Sie ZendFramewo

Zend Framework-Middleware: Implementierung von Volltextsuch- und Paging-Funktionen Zend Framework-Middleware: Implementierung von Volltextsuch- und Paging-Funktionen Jul 30, 2023 pm 08:49 PM

ZendFramework ist ein leistungsstarkes Entwicklungsframework, das Entwicklern hilft, schnell leistungsstarke, skalierbare PHP-Anwendungen zu erstellen. Unter diesen ist Middleware ein wichtiges Konzept in ZendFramework, das uns bei der Implementierung von Volltextsuch- und Paging-Funktionen helfen kann. In diesem Artikel wird erl?utert, wie Sie Middleware in ZendFramework verwenden, um diese beiden Funktionen zu implementieren, und es werden Codebeispiele bereitgestellt. 1. Volltextsuchfunktion Die Volltextsuche ist eine der h?ufigsten Funktionen in modernen Anwendungen.

Effiziente Datenbankabfrage durch Zend Framework-Middleware Effiziente Datenbankabfrage durch Zend Framework-Middleware Jul 28, 2023 pm 01:13 PM

Implementierung effizienter Datenbankabfragen durch die ZendFramework-Middleware Einführung Im Entwicklungsprozess sind Datenbankabfragen ein unvermeidlicher Bestandteil. Eine effiziente Datenbankabfrage kann die Systemleistung und das Benutzererlebnis erheblich verbessern. ZendFramework ist ein weit verbreitetes PHP-Framework mit leistungsstarken Datenbankbetriebsfunktionen. In diesem Artikel wird vorgestellt, wie effiziente Datenbankabfragen mithilfe der ZendFramework-Middleware implementiert werden, und es werden entsprechende Codebeispiele bereitgestellt. 1. ZendF verstehen

Zend Framework-Middleware: Fügt Anwendungen OAuth- und OpenID-Anmeldeunterstützung hinzu Zend Framework-Middleware: Fügt Anwendungen OAuth- und OpenID-Anmeldeunterstützung hinzu Jul 28, 2023 pm 01:09 PM

ZendFramework Middleware: Hinzufügen von OAuth- und OpenID-Login-Unterstützung zu Anwendungen Die Benutzerauthentifizierung ist eine entscheidende Funktion in heutigen Internetanwendungen. Um ein besseres Benutzererlebnis und mehr Sicherheit zu bieten, entscheiden sich viele Anwendungen für die Integration von Anmeldediensten von Drittanbietern wie OAuth und OpenID. In ZendFramework k?nnen wir über Middleware ganz einfach OAuth- und OpenID-Anmeldeunterstützung zu unseren Anwendungen hinzufügen. Zuerst müssen wir Ze installieren

Zend Framework-Middleware: Bietet E-Mail-Benachrichtigungs- und Nachrichten-Push-Funktionen Zend Framework-Middleware: Bietet E-Mail-Benachrichtigungs- und Nachrichten-Push-Funktionen Jul 29, 2023 pm 08:29 PM

ZendFramework-Middleware: Bietet E-Mail-Benachrichtigungs- und Nachrichten-Push-Funktionen. Einführung: Mit der Entwicklung des Internets und der Popularit?t von Smartphones sind E-Mail-Benachrichtigung und Nachrichten-Push zu einer der am h?ufigsten verwendeten Funktionen in der modernen Softwareentwicklung geworden. In ZendFramework k?nnen wir Middleware verwenden, um E-Mail-Benachrichtigungs- und Nachrichten-Push-Funktionen zu implementieren. In diesem Artikel wird die Verwendung der ZendFramework-Middleware zur Implementierung von E-Mail-Benachrichtigungen und Nachrichten-Push vorgestellt und entsprechende Codebeispiele bereitgestellt. 1. Vorbereitungsarbeiten in

Zend Framework-Middleware: Fügen Sie Webanwendungen Social-Login-Funktionalit?t hinzu Zend Framework-Middleware: Fügen Sie Webanwendungen Social-Login-Funktionalit?t hinzu Jul 28, 2023 pm 07:21 PM

ZendFramework ist ein auf PHP basierendes Open-Source-Framework, das viele leistungsstarke Tools und Komponenten zum Erstellen skalierbarer Webanwendungen bereitstellt. In diesem Artikel wird vorgestellt, wie Sie die Middleware von ZendFramework verwenden, um Social-Login-Funktionalit?t zu Webanwendungen hinzuzufügen. Middleware ist Code, der ausgeführt wird, bevor oder nachdem eine Anfrage in Ihre Anwendung gelangt. Es erm?glicht Entwicklern, den Prozess der Bearbeitung von Anfragen anzupassen und zu erweitern. ZendFramework bietet eine flexible M?glichkeit dazu

CodeIgniter vs. Zend Framework: Welches Framework eignet sich besser für die Entwicklung von ERP-Systemen? CodeIgniter vs. Zend Framework: Welches Framework eignet sich besser für die Entwicklung von ERP-Systemen? Jun 19, 2023 am 08:53 AM

Wenn Sie sich für die Entwicklung eines ERP-Systems entscheiden, ist die Wahl eines geeigneten Frameworks entscheidend. Hier vergleichen wir die beiden PHP-Frameworks CodeIgniter und ZendFramework, um Ihnen dabei zu helfen, ein Framework zu finden, das besser für Ihre ERP-Systementwicklung geeignet ist. CodeIgniter und ZendFramework sind beliebte PHP-Frameworks. Beide bieten viele Funktionen und sind erweiterbar und wartbar. Allerdings unterscheiden sich diese beiden Frameworks in einigen Aspekten erheblich und sind für einige Anwendungen besser geeignet.

Zend Framework-Middleware: Alipay- und WeChat-Zahlungsfunktionen zu Anwendungen hinzufügen Zend Framework-Middleware: Alipay- und WeChat-Zahlungsfunktionen zu Anwendungen hinzufügen Jul 28, 2023 pm 08:01 PM

ZendFramework-Middleware: Hinzufügen von Alipay- und WeChat-Zahlungsfunktionen zu Anwendungen Einführung: Mit der Popularit?t mobiler Zahlungen sind Alipay- und WeChat-Zahlungen in vielen Anwendungen zu unverzichtbaren Zahlungsmethoden geworden. In diesem Artikel wird erl?utert, wie Sie mithilfe der ZendFramework-Middleware Alipay- und WeChat-Zahlungsfunktionen zur Anwendung hinzufügen. Durch das Studium dieses Artikels erfahren Sie, wie Sie Middleware zur Vereinfachung des Zahlungsprozesses einsetzen und auf Ihre tats?chlichen Projekte anwenden. 1. Vorbereitung Bevor Sie beginnen, müssen Sie

See all articles