본문 바로가기
FrameWork/ZendFrameWork

자신이 만든 또는 3rd party 라이브러리 autoloading 하기

by 백룡화검 2008. 8. 13.

http://framework.zend.com/manual/en/zend.controller.subclassing.html#zend.controller.subclassing.conventions


위의 형식에 따라 자신이 만든 라이브러리나 3rd 파티 라이브러리를 설치했을 경우

해당 클래스를 사용하기 전에 require_once 나 Zend::loadClass() 등으로 미리 로딩해줘야 한다.


<?php

require_once('Foo/Controller/Action.php');

class IndexController extends Foo_Controller_Action {

~

~

}

?>



처럼 매 클래스파일마다 작성하기가 번거롭다고 느낄 경우..


include 'Zend.php';

/**
 * Register Zend::loadClass() as autoload method. Loads PEAR-style
 * (My_Name_Is_Foo is located in My/Name/Is/Foo.php) class file
 * automagically.
 */
spl_autoload_register(array('Zend', 'loadClass'));


Zend.php 를 인클루드 한 후에 위와 같이 한다.

Zend클래스의 loadClass함수/메소드를 autoload 함수로 사용하겠다는 의미인 듯.



참고.

https://svn.usrportage.de/PhpWishList/

 require_once 'Zend/Loader.php';
//spl_autoload_register(array('Zend_Loader', 'autoload'));
Zend_Loader::registerAutoload();

로 대체.