Việc dùng session trong một ứng dụng web là chuyện rất bình thường và gần như là một điều bắt buộc trong việc lập trình ứng dụng web ngày nay. Bài viết không có ý định giải thích session là gì, cách khai báo, cơ chế như thế nào... trong session. Bài viết chỉ đơn giản làm một ví dụ minh họa cách dùng session đơn giản nhất trong Zend Framework 2 (ZF2). Việc ứng dụng hay dùng nhất và cũng đơn giản nhất đó chính là việc login/logout trong một website, như vậy mình cũng sẽ dựa vào đây để làm ví dụ minh họa cho bài viết này.
Một weblog bé tí của một con người bé tí, nhằm chia sẻ những điều bé tí để hy vọng những thứ ấy kết hợp lại thành một cái to lớn.
April 30, 2013
Zend Framework 2: Login ZF2 using session basic
Labels:
Login,
PHP,
Session,
Web Developer,
Zend Framework 2
Location:
Ho Chi Minh City, Vietnam
April 9, 2013
Xdebug - Profiler website for high performance
Trong phần 1, mình đã giới thiệu tới mọi người tính năng thứ nhất của XDebug đó là debug code PHP. XDebug không chỉ dừng lại mỗi tính năng này, cái hay của nó là ở phần Profiler website - tính năng rất hữu ích cho việc tìm ra bottle-neck (nút thắt cổ chai) của website, từ đó đưa ra giải pháp cải tiến, nâng cấp, tối ưu nhầm mang lại hiểu quả cao hơn cho website. Hôm nay mình sẽ chia sẻ 1 phần kỹ thuật này, giúp mọi người có thể tự tay tìm ra điểm "chậm" của website mình
Labels:
Bottle neck,
High Performance,
Profiler,
WAMP,
Web Developer,
Xdebug
Location:
Ho Chi Minh City, Vietnam
April 3, 2013
Zend Framework 1.x - Work Flow - Part 2
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.
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.
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.
Labels:
Web Developer,
Work Flow,
Zend Framework
Location:
Ho Chi Minh City, Vietnam
March 28, 2013
Zend Framework 2 - Routing - Part 2
![]() |
| Tree Routing |
Ngoài ra, với tree routing còn giúp cải thiện tốc độ load web nhanh hơn. Nhưng đây cũng là một khái niệm khá mới nên có vẻ cũng hơi khó làm quen với nó. Mình cũng chỉ mới tập tành làm quen với dạng routing này.
Labels:
Friendly Url,
Rewrite Url,
Routing,
Web Developer,
Zend Framework 2
March 25, 2013
Zend Framework 2 - Routing - Part 1
Trong ZF2 chức năng routing được thay đổi rất đáng kể so với ZF1. Đối với ZF2, sẽ không còn cái được gọi là routing mặc định để áp dụng cho tất cả những uri được request tới. Mà thay vào đó là mọi router đều phải được đăng ký. Việc này sẽ làm cho lập trình viên hơi bị mệt nhọc và nặng nề cho việc viết rule routing, tuy nhiên nó lại giúp cho ứng dụng ZF2 chạy nhanh hơn.
Việc cải tiến nữa trong routing ZF2 đó là cơ chế routing cơ bản nhất cũng yêu cầu sử dụng regular expression - cái thứ mà rất làm nản lòng dân developer.
Bài viết sẽ cố gắng giúp mọi người có thể cài đặt routing trong ZF2 và cũng không dám mong rằng đây là một hướng dẫn xuyên suốt cho phần routing ZF2
Việc cải tiến nữa trong routing ZF2 đó là cơ chế routing cơ bản nhất cũng yêu cầu sử dụng regular expression - cái thứ mà rất làm nản lòng dân developer.
Bài viết sẽ cố gắng giúp mọi người có thể cài đặt routing trong ZF2 và cũng không dám mong rằng đây là một hướng dẫn xuyên suốt cho phần routing ZF2
Labels:
Friendly Url,
Rewrite Url,
Routing,
Web Developer,
Zend Framework 2
Location:
Ho Chi Minh City, Vietnam
March 22, 2013
Zend Framework 1.x - Work Flow - Part 1
![]() |
| nguồn: http://www.kurttest.com/zfa/dispatch.html |
Bài viết mang một khía cạnh minh họa và giảng lược bằng hình ảnh để giúp những người đã từng có kinh nghiệm làm việc với ZF hiểu rõ cơ chế vận hành như thế nào.
Để rào trước đón sau, mình chỉ dám nói đây là tiến trình xử lý của ZF1 chứ không dám khẳng định ZF2 cũng y như vậy. ZF2 đã có 1 số cải tiến rất rõ về bộ library không biết có thay đổi về work flow không thì mình vẫn chưa thể khẳng định tại thời điểm này.
Labels:
Web Developer,
Work Flow,
Zend Framework
Location:
Ho Chi Minh City, Vietnam
March 18, 2013
Zend Framework 2 - Access Db via PDO
Tiếp nối cho bài viết về Zend Framework 2 - Startup, chỉ đơn giản là cài đặt và chạy bộ khung của ứng dụng ZF2, hôm nay mình sẽ viết tiếp sự tương tác của ZF2 với Database. Cụ thể trong bài này mình sẽ dùng database là Mysql server và bộ thư viện PDO để tương tác. Đại đa số các bài hướng dẫn trên mạng về sự tương tác DB với ZF2 chủ yếu tập trung với việc dùng class TableGateway, bài viết của mình đơn giản hơn là dùng chính PDO để tương tác với MySQL server luôn.
Labels:
Database,
MySQL,
PDO,
Web Developer,
Zend Framework 2
March 5, 2013
Zend Framework 2 - Startup
Hôm nay mình sẽ viết loạt bài hướng dẫn sử dụng Zend Framework 2 (ZF2) để xây dựng ứng dụng web. Bài viết được viết dựa trên sự tham khảo từ website chính thức của Zend, và sự tìm tòi của cá nhân. ZF2 không còn làm mới mẻ gì nếu như bạn từng là một tín đồ của ZF1, vì chỉ tính từ khi phiên bản stable ra đời tới nay đã hơn 6 tháng rồi.
Labels:
Virtual Host,
WAMP,
Web Developer,
Zend Framework 2
Subscribe to:
Posts (Atom)







