Hướng dẫn cài đặt cấu hình zend2 năm 2024

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

4 là cầu nối để truy cập dữ liệu được cấu hình trong code của ứng dụng. Dữ liệu cấu hình cho ứng dụng có thể đến từ các nguồn cấp khác nhau như:

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

5,

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

6,

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

7, XML hoặc

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

8.

Khởi tạo và đọc dữ liệu Config từ mảng dữ liệu PHP

Nếu bạn cung cấp dữ liệu config từ một mảng dữ liệu PHP thì khởi tạo đối tượng Zend\Config\Config để đọc dữ liệu như sau:

Dùng hàm tạo:

new Zend\Config\Config[array $array, $allowModifications = false]

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

Lưu ý khi sử dụng Zend\Config\Config

Khi cần truy cập dữ liệu

// Mảng dữ liệu lưu giữ cấu hình $configArray = array[     'webhost'  => 'www.example.com',     'database' => array[         'adapter' => 'pdo_mysql',         'params'  => array[             'host'     => 'db.example.com',             'username' => 'dbuser',             'password' => 'secret',             'dbname'   => 'mydatabase'         ]     ] ]; // Khởi tạo đối tượng và nạp dữ liệu $configArray $config = new Zend\Config\Config[$configArray]; //Tiến hành đọc bất kỳ dữ liệu nào bằng toán tử ->,[], hàm get[] echo $config->webhost; echo $config->database->params->host; echo $config['database']['params']->dbname; echo $config->get['webhost','myhost.vn']; echo $config->webhost;

9 có thể dùng một trong các cách:

  • dùng toán tử $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 0
  • dùng toán tử mảng $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 1
  • dùng hàm $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 2.
  • $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 3 kế thừa $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 4 và $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 5 do đó bạn có thể duyệt các thành phần bằng $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 6, sử dụng hàm $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 7 ...
  • Mặc định thì dữ liệu trong Zend\Config\Config sẽ ở tình trạng chỉ đọc và bạn không thể dùng toán tử gán [ví dụ $config->database->host = 'example.com'; sẽ gây lỗi]. Tuy nhiên bạn có thể chỉ ra là có phép ghi đè dữ liệu nếu khi bạn khởi tạo bạn chỉ định thuộc tính $allowModifications = true khi khởi tạo [Ví dụ $config = new Zend\Config\Config[$configArray, $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 8];
  • Nếu có 2 đối tượng Zend\Config\Config thì bạn có thể trộn chúng vào làm một bằng hàm $configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig]; 9 như ví dụ dưới đây:

$configLocal = new Zend\Config\Config[$configArrayLocal]; $config = new Zend\Config\Config[$configArray]; $config->merge[$localConfig];

  • Lưu ý bạn chỉ có thể sử dụng hàm // config.php     www.example.com                                                                                      //Gộp thêm từ file xml khác  

    Thì dữ liệu được nạp vào như sau:

    $reader = new Zend\Config\Reader\Xml[]; $data   = $reader->fromFile['/path/to/config.xml']; echo $data['webhost'];  // prints "www.example.com" echo $data['database']['params']['dbname']['value']; 

    Zend\Config\Reader\Json

    Zend\Config\Reader\Yaml

    Zend\Config\Reader\JavaProperties

    Các định dạng Json,Yaml, JavaProperties được thực hiện tương tự.

    Lưu giữ liệu config vào file

    Các class trong Zend\Config\Writer gồm có:

    • Zend\Config\Writer\Ini
    • Zend\Config\Writer\Xml
    • Zend\Config\Writer\PhpArray
    • Zend\Config\Writer\Json
    • Zend\Config\Writer\Yaml

    Cung cấp các chức năng để lưu config ra các file theo định dạng Ini,Xml,PhpArray, Json, Yaml. Các lớp này có giao diện tương tự nhau nên bạn chỉ cần tìm hiểu một ví dụ sau đó áp dụng cho định dạng nào là tùy thích vì chúng có hai hàm

    // config.php

Chủ Đề