2012-05-15 8 views
0

저는 kohana에 익숙하며 PHP에도 상대적입니다.kohana에서 전역 함수를 정의했습니다.

PHP와는 달리 JS % 100을 흉내 낸 간단한 URI 인코딩 기능이 있습니다.

특정 클래스에서이 함수를 사용하고 싶지만 각 클래스에서이 함수를 정의하고 싶지 않습니다.

그렇다면 전역 함수를 모든 곳에서 사용할 수 있도록 정의하려면 어떻게해야합니까?

감사합니다 (I는 3 라인 코드 기능을위한 클래스를 생성하고 싶지 않아)!

답변

4

과부하 코어 URL 헬퍼 클래스. 함수를 정적 메서드로 추가하십시오.

2

좋은 OO 원칙을 피하려는 욕망을 무시하십시오. 새 클래스를 만들고 정적 공용 함수를 만듭니다. 불량의 전역 함수를 생성하지 마십시오.

1
<?php 
function yourFunction() { 
    return 'your result'; 
} 

어때요? 그 파일을 항상 포함시키고 쓰기 만하면됩니다. OO를하고 있다고 생각하기 위해서 정적 인 클래스를 만들지 마라. 아무런 의미가 없다. 내가 APPPATH/classes/url.php에 새 파일을 생성하여 핵심 URL 헬퍼 클래스 (당신이 Kohana 3.x를에있어 가정)을 확장하는 것이 좋습니다하지만

0

당신은 당신이 (APPPATH/bootstrap.php를) 부트 스트랩에서 전역 함수를 넣을 수 있습니다 :

class URL extends Kohana_URL { 

    public static function encode($uri) 
    { 
     // ... 
    } 

} 

거의 항상 3 줄의 코드 가치가 있습니다. Kohana는 핵심 수업을 무시하도록 설계되었습니다. 귀하의 코드가 더 maintainable 것입니다.

관련 문제