zend framework

ไม่ต้องการ render Layout และ/หรือ View ใน Zend Framework หรือ ZF

ในบางครั้งเราอาจไม่ต้องการ render view และ/หรือ layout เช่นกรณีเราทำ Ajax Controller ก็ไม่อยากจะแสดง layout รวม อยากแสดงแค่ json หรือ xml เราก็เซตได้ครับ ดังนี้ครับ
      $this->_helper->layout->disableLayout();
      $this->_helper->viewRenderer->setNoRender(TRUE);
โดยแป่ะไว้ที่ action เกี่ยวข้อง หรือ ไว้ใน init() ของ controller ที่เกี่ยวข้องก้ได้ แล้วแต่สะดวกครับ

Zend Framework and Smarty Integration

เกริ่นนำ

ทำไมต้องใช้ Smarty ทำไมไม่ใช้ Zend_View ไปเลย??

นั่นหน่ะสิครับ ... โดยส่วนตัว ผมก็ไม่กล้าฟันธงน้ะครับว่าทำไม เพราะอะไร ผมคิดว่า ก็แล้วแต่ความชอบ และความเหมาะสมกับงานของใครของมัน ก็แล้วกัน :)

Dojo and Zend Framework Integration Released

หลังจากได้ข่าวมาซักพักใหญ่ ว่าเวอร์ชันต่อไป ของ ZF จะมี Javascript Framework รวมอยู่ด้วย
แล้วก็ เดาๆกันว่า เป็น Dojo

และแล้ว วันนี้ ก็เจอใน Web Logs หลายๆ ที่พูดถึง Zend กับ Dojoได้ Release เวอร์ชันแรกๆ ของ ZF ที่มี Dojo ติดมาด้วย  เขาบอกว่า สำหรับเวอร์ชันแรกนี้อาจจะเป็นการเรียกน้ำย่อย ก่อนเพราะว่า เท่าที่อ่านดู Widgets ที่ออกมา พร้อมเวอร์ชันนี้ค่อนข้างจะน้อย แต่สำหรับ แฟนพันธ์แท้ JSON ก็คงมีอะไรให้เล่นพอสมควร

สรุปแล้วเท่าที่ลองอ่านดูคร่าว ก็มี

Exception Handling

ตอนนี้กำลังสงสัยว่า เราจะจัดการ Exception (Zend_Exception) อย่างไรดี ...

เช่น

// Some controller
<?php
    class SomeController extends Zend_Controller_Front
    {
        ... // some code
        public function doSomethingAction()
        {
            if( empty($someRequiredValue) )
            {
                throw new Zend_Exception("The required value must not be empty!");
            }
            else
            {
                // continue working
                ...
            }
        }
        ... // some code
    }
?>

การปรับใช้ Smarty Template Engine ใน Zend Framework

ด้วยความที่ใช้ smarty มาเป็น template engine จนติด พอผมมาเริ่มใช้ zend framework ก็เลยหาอ่านบทความว่า จะเอา smarty นี้มาใช้ร่วมกันได้ไหม เพราะว่า มีหลายอย่างที่ทำกับ smarty แล้วง่ายดี และยังไม่อยากจะปรับทุกสิ่งทุกอย่าง เข้า Zend_View (จริงๆ แล้วจะบอกว่าขี้เกียจก็ไม่ผิด) ซึ่งก็พบว่า สามารถเอามาใช้ร่วมกันได้ ไม่มีปัญหา เพราะทาง zend เค้าออกแบบ framework ตัวนี้มาให้ยืดหยุ่นมากทีเดียว เราสามารถจะเพิ่มเติม หรือปิดไม่ใช้ อะไรก็ได้

และพอเริ่มจะเอา smarty มาใช้จริงๆ ก็เริ่มหาอ่านว่าชาวบ้านเขาทำกันยังงัย ก็พบที่เขาถกกันอยู่ 2 สายหลักๆ ดังนี้

1. Extends Zend_View และผสาน Smarty เข้าไป

สร้าง View เป็นของตัวเอง เช่นอาจจะชื่อ Smarty_View โดย extends มาจาก Zend_View (หรือ Zend_View_Abstract) เช่น

class Smarty_View extends Zend_View_Abstract
{
}

Zend Framework 1.0.0 Production Release

ออกตั้งแต่วันที่ 30 มิ.ย. 50 แน่ะ อ่านแถลงการณ์ได้ที่นี่ และดาวน์โหลดได้ที่นี่

Getting start with Zend Framework #2 (ตอนจบ)

หลักจากเห็น source code ของตัวอย่างการเริ่มใช้งานใน Getting start with Zend Framework #1 แล้ว บทความนี้จะขอขยายความต่อแล้วกันน้ะครับ

ดังที่กล่าวไว้แล้ว สถาปัตยกรรมของ framework ตัวนี้ เป็น MVC

Bootstrap

ในไฟล์ทำงานหลัก ที่โหลดทุกอย่างที่ต้องการ และกำหนดค่าเริ่มต้นต่างๆ ซึ่งเราใช้ไฟล์ index.php เป็น bootstrap เพียงไฟล์เดียว

โครงสร้างของ URI

URI ที่ request มานั้น จะมีโครงสร้างคือ {ROOT}/Controller/Action/Param1/Value1/Param2/Value2 ซึ่งถ้าไม่ระบุ Controller และ ไม่ระบุ Action จะ default ไปที่ IndexController และ IndexAction เช่น

Getting start with Zend Framework #1

ถึงเวลาเริ่มกันหรือยัง สำหรับ Zend Framework หลังจากที่ เวอร์ชั่น 1.0.0 RC1 ออกได้ซักระยะ ตอนนี้ก็มีเวอร์ชั่น 1.0.0 RC2 ออกตามมีอีกติดๆ (ออกเมื่อ 2007/06/07 นี่เอง) การเปลี่ยนแปลงหลักๆ ดูได้ที่นี่ ที่แน่ๆ มีต้องเปลี่ยน code เล็กน้อย จาก RC1 เป็น RC2

ผมเคยเขียนถึง Getting Start with Zend Framework แล้วครั้งนึง ตอนที่เริ่ม launch php zealots แรกๆ ที่ http://www.phpzealots.com/node/15 แต่ไม่ได้มีรายละเอียดอะไรเลย แถมไปเอา Tutorial ต้นฉบับในรูปแบบ PDF มา attach ไว้ในบทความ ซึ่งเป็นการไม่เหมาะสมอย่างยิ่ง มาคราวนี้ก็เลยมาเขียนในแบบของผมเอง ...



©2007-2010 PHPZealots.com. All right reserved.
Syndicate content