Phần 2 - Zend Framework 1.x - Work Flow

Phần 2 - Zend Framework 1.x - Work Flow

Sau khi tiến trình xử lý Routing kết thúc, ZF sẽ kích hoạt tiến trình preDispatch, đây là tiến trình được xử lý trước các action trong controller của ZF.

Phần 2 - Zend Framework 1.x - Work Flow

Tiến trình được xử lý đầu tiên bằng việc Plugin Broker kiểm tra xem có một controller plugin nào được thiết lập phương thức dispatchLoopStartup hay không, nếu có thì thực thi phương thức này của controller plugin, sau đó Plugin Broker sẽ thông báo ngược lại với Front Controller đã hoàn tất quá trình loop startup và từ đây Front Controller sẽ gắn trạng thái TRUE vào cờ isDispatch của đối tượng Request (xem lại phần 1), Front controller sẽ tiến tới quá trình xử lý preDispatch, như vậy tại đây chúng ta sẽ thấy rằng Loop Dispatch là tiến trình chạy trước preDispath.

Front Controller lại đẩy sang Plugin Broker để kiểm tra xem có controller plugin nào đó được thiết lập phương thức preDispatch hay không, nếu có thì thực thi phương thức. Tại đây, khối Front Controller sẽ kiểm tra xem cờ isDispatch có được reset thành FALSE hay không? Nếu có, quá trình sẽ được lặp lại bước trên (do đó nó có tên là LOOP STARTUP). Ngược lại, tức là cờ isDispatch vẫn đang ở trạng thái  TRUE thì Front Controller sẽ triệu gọi action trong controller tương ứng lên thực thi. Tiến trình này được gọi là Controller Dispatch

Tiến trình Controller Dispatch sẽ load file controller class tương ứng lên, đồng thời kích hoạt luôn helper broker lên để đăng ký action vào đây. Nó sẽ thực thi phương thức preDispatch trong class controller đó, sau đó nó kiểm tra xem có thể thực thi action mà người dùng đang mong chờ không, nếu có thể thực hiện được, nó sẽ thực thi action đó và tiếp đó là tới postDispatch. Cuối cùng nó sẽ gửi thông điệp response về cho Front Controller, để tiếp tục qua tiến trình post dispatch của khối front controller.

Tiến trình postDispatch ở khối Front Controller bắt đầu bằng việc nhờ khối Plugin Broker kiểm tra xem có thể thực thi phương thức dispatchLoopShutdown nào của controller plugin không? Xong việc, Front Controller sẽ gửi đối tượng response về. Đối tượng response sẽ gửi header về trước rồi tối khối Body cho user. Như vậy là kết thúc quá trình xử lý trong ZF 1.x

Hy vọng bài viết có thể giúp mọi người có cái nhìn tổng quan và hiểu phần nào cách xử lý trong ZF 1.x

Theo Minh Quang Trần 

Bạn thấy bài viết này như thế nào?: 
Average: 9 (1 vote)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
LG Prada 3.0 start selling in UK on february

LG Prada 3.0 start selling in UK on february

We’ve already talked about the LG Prada 3.0‘s quest to the UK. The sexy device has already been announced by few phone retailers, which will offer it either unlocked or with a carrier contract.

Adobe đưa Flash lên “Ice Cream Sandwich” vào cuối năm

Adobe đưa Flash lên “Ice Cream Sandwich” vào cuối năm

Kế hoạch ngừng phát triển Flash Player di động của Adobe sẽ phải đợi lâu hơn một chút, khi công ty tiếp tục đưa Flash lên Android 4.0 “Ice Cream Sandwich”.

4 lá thư tay năm 2013 khiến dân mạng nhớ mãi

Ba trong số 4 bức thư cảm động này do trẻ em tiểu học viết, lời lẽ chân thành và trong sáng của các em khiến nhiều người rớt nước mắt.

Công ty diệt chuột T&C

 

Diet con trung