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

 
 Drupal 8 system plugin

Cần học một số kỹ thuật trong Drupal 8 system plugin

Drupal 8 comes with a brand new plugin system. This article provides a high-level overview of both the annotation and hook discovery mechanisms by examining a real world implementation in the form of core's Field API Widgets.

Broadcom công bố VXL lõi tứ tích hợp 3G cho smartphone giá rẻ

Broadcom công bố VXL lõi tứ tích hợp 3G cho smartphone giá rẻ

Hãng sản xuất linh kiện bán dẫn Broadcom của Mỹ vừa chính thức công bố mẫu chip mới nhất có tên BCM23550 được tích hợp modem mạng 3G HSPA+ dành cho các dòng smartphone Android giá rẻ.

Chính phủ Mỹ "sờ gáy" Facebook vì vấn đề bảo mật

Chính phủ Mỹ sờ gáy Facebook vì vấn đề bảo mật

Facebook đang phải tiến hành những cuộc đàm phán với chính phủ Mỹ về việc sử dụng thông tin cá nhân người dùng trên mạng xã nội này. Theo thông tin nội bộ, chính phủ yêu cầu Facebook phải nhận được sự đồng ý của người sử dụng trước khi hãng thay đổi những điều khoản quan trọng trong chính sách bảo mật. Điều đó có nghĩa việc người dùng cho phép chia sẻ thông tin của mình là một chuyện, việc Facebook sử dụng thông tin đó như thế nào lại là một chuyện khác.

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

 

Diet con trung