Zend Framework 2-待望のコントローラーとビューの改善

画像 先日、新しいZF2を試しました。 私はたくさんの資料を読み直し、彼らのチュートリアルで簡単な小さなサイトを集めました。 そして、アクションとビューを作成することになったとき、私の喜びの限界には限界がありませんでした。 ビューへの変数の受け渡しはreturnを介して行われ、ローカルになります($ this-> paramなし)。 この改善のために、ベータ版であるにもかかわらず、ZF2に切り替える準備ができました。



カットの下では、コントローラーとビューテンプレートに関するイノベーション、パフォーマンス、および変更について少し説明します。





誰もが話しているZF2の革新:

開発者は、まともなZendSkeletonApplicationを試し、作成しました。これは、ZF2 MVCレイヤーとシステムモジュールを使用するシンプルなアプリケーションスケルトンです。 スケルトンは、Twitterの無料のcssおよびhtml ツールを使用します。 1つのページから素晴らしいweb2.0 Webサイトを取得します。これは簡単にフルサイトに展開できます。



ZF2のパフォーマンスについて

評価するのは難しいですが、生産性が少なくとも2倍になると安全に想定できます。



コントローラーとビューの待望の改善



ついにやった! アクションコントローラーでは、変数を渡すことは魔法でなくなりました。 い$ this-> view-> ...の代わりに、アクションはビューのデータを含む連想配列を返すはずです。 比較のために例を挙げます。



それはZF1でした:

パブリック 関数 indexAction

{

$ this- > view- > albums = $ this- > albumTable- > fetchAll ;

$ this- > view- > user = 123 ;

$ this-> view-> text = '任意の<html>それはビューで自動的にエスケープされません' ;

}


ZF2になりました:

パブリック 関数 indexAction

{

配列を 返す

'アルバム' => $ this- > albumTable- > fetchAll

'user' => 123

'text' => '任意の<html>ビューで自動的にエスケープされます'

;

}




ビューテンプレートもより良く変換されました。 変数はローカルになり(名前で利用可能)、ヘルパーは$ this-> helper()で利用可能になりました。 すべての文字列変数は、XSSを回避するために自動的にエスケープされます。 配列とオブジェクトは変更されないため、それらから値を取得するときは、$ this-> escape();を通過する必要があります。

コードの読み書きがより便利になりました。



それはZF1でした:

<?php

$ this- > headTitle 'マイアルバム' ;

?>



<?php

foreach $ this- > album as as album {

//いくつかのコード

}

?>



<?php

echo $ this- > escape $ this- > text ;

?>



ZF2になりました:

<?php

//ヘルパーは$ thisからも利用できます

$ this- > headTitle 'マイアルバム' ;

?>



<?php

//上の例のアクションのアルバムは、ローカル変数を介して利用可能になりました

foreach $ albums as $ album {

//いくつかのコード

}

?>



<?php

//エスケープを呼び出す必要はありません。すべてのスカラー値は自動的にエスケープされます

//配列とオブジェクトはスキップされ、そのまま表示されます

エコー $テキスト ;

?>



私の意見では、これはZF2で最も「おいしい」改善です。



試し方と読み方



Zend Framework 2はベータ版です。 安定版のリリースは2012年の春になると見ましたが、今は自分の責任で使ってください。



必ず最新のPHP 5.3.8をインストールしてください。 PHP 5.3.2では、Strict Standartエラーが発生しました。

Windowsでは、 VC9用にコンパイルされた新しいApache 2.4をインストールする必要がありましたここから PHP x86 TS VC9を、ここから拡張機能apcおよびmongo ダウンロードし、公式Webサイトでphp_xdebug.dllを選択します。フォームでphpinfoを送信します。



まず、サイトtokarchuk.ruでロシア語の「Zend Framework 2.学習用資料」の良い記事を読んでください。



その後、すばらしいZend Framework 2入門チュートリアル(PDF、en)を使用して、ZF2を1、2時間でインストールし、テストモジュール「アルバム」を作成します。



All Articles