Zend Framework 1.x

グローバルで使える変数を定義する - Zend_Registry

Zend_Registryを使うと、グローバルで使える変数を定義することができます。

// グローバルで使える変数を設定
Zend_Registry::set('hoge', 1);

// グローバルで使える変数を取得
$foo = Zend_Registry::get('hoge');

Zend_Registry::set()で設定したものは、Zend_Registry::get()で取得できるようになります。

オートローディングの設定をする

この設定をすると、requireやincludeを用いずにフレームワークに含まれているクラス群を自動的にロードできます。

require_once 'Zend/Loader.php';
require_once 'Zend/Loader/Autoloader.php';
$autoLoader = Zend_Loader_Autoloader::getInstance();

現在の日時を表示する - Zend_Date

まずは、Zend_Date を使用する際の初期処理として、メソッド date_default_timezone_set にてタイムゾーンを設定します。

require_once 'Zend/Date.php';

//デフォルトタイムゾーンを設定。サマータイムがある地域はそれも適応されます。
date_default_timezone_set('Asia/Tokyo');

$date = new Zend_Date();
print $date; 

フォワードする

リダイレクトの場合は、再アクセスをしますが、フォワードは、リダイレクトとは違い処理を途中で転送することです。

別のアクションにフォワード

$this->_forward('別アクション名');

別のコントローラのアクションにフォワード

$this->_forward('別アクション名', '別コントローラ名');

別のモジュールにフォワード

$this->_forward('別アクション名', '別コントローラ名', '別モジュール名');

パラメータを付与してフォワード

$params = array(
    'mode' = '1',
    'id' = '5'
);
$this->_forward('別アクション名', '別コントローラ名', '別モジュール名', $params);

リダイレクトする

リダイレクトには、いくつかの記載方法があります。

まずは、相対パスで指定する方法です。

$this->_redirect('/test/list');

次に絶対パスで指定する方法です。

$this->_redirect('http://example.com/test/list');
 

コントローラ名とアクション名を指定してもリダイレクトできます。

$this->_helper->redirector('アクション名', 'コントローラ名');
 

 

フレームワークのバージョンを出力する - Zend_Version

フレームワークのバージョンを出力する

require_once 'Zend/Version.php';
echo Zend_Version::VERSION;

別のアクションのビューを表示する。

別のアクションのビューを表示には、コントローラに以下の記述をするとできます。

$this->render('別のアクション名');

ロケールが同一かどうか確認する

二つのロケールを比較するためには、equals() メソッドを使用します。

$locale = new Zend_Locale();

$locale2 = new Zend_Locale('en_US');

 

//ロケールが同一な場合は、真となります。

if ($locale->equals($locale2)) {

    echo "同一です";

}

 


[対象]

Zend Framework 1.x
Zend Framework 2.x

 

デバックする - Zend_Debug

Zend_Debugを利用するとvar_dump()よりもブラウザで見やすくデバックすることができます。いい感じに改行やインデントをしてくれています。

Zend_Debug::dump($test);

自動レンダリングを無効にする

コントローラに以下の記載をすると自動レンダリングを無効にすることができます。ちなみに、自動レンダリングとは、ビューが自動的に表示されることです。

$this->_helper->viewRenderer->setNoRender();

------------------------------
作成日:2016年01月02日
更新日:2016年06月12日
------------------------------

ページの先頭へ