0

私はコハナが初めてで、比較的phpも初めてです。

PHP のものとは異なり、JS %100 のものを模倣する単純な URI エンコーディング関数があります。

この関数を特定のクラスで使用したいのですが、それらのすべてで定義したくありません。

では、すべての場所で使用されるグローバル関数を定義するにはどうすればよいでしょうか?

(3 行のコード関数のクラスを作成したくありません)

ありがとうございました!

4

4 に答える 4

4

コアURLヘルパー クラスをオーバーロードします。関数を静的メソッドとして追加します。

于 2012-05-15T14:28:19.680 に答える
2

良い OO 原則を避けたいというあなたの願望を覆してください。新しいクラスを作成し、静的パブリック関数を作成します。古き良きグローバル関数を作成しないでください。

于 2012-05-15T14:29:44.793 に答える
1
<?php
function yourFunction( ) {
    return 'your result';
}

どのようにそのことについて?常に含まれるファイルにそれを書き込むだけで、準備は完了です。OOを実行していると考えるためだけに、静的クラスを作成しないでください。意味がありません。

于 2012-05-15T15:02:55.423 に答える
0

ブートストラップ ( ) にグローバル関数を配置できますが、次APPPATH/bootstrap.phpの場所に新しいファイルを作成してコア URL ヘルパー クラスを拡張することをお勧めします (Kohana 3.x を使用していると仮定します) APPPATH/classes/url.php

class URL extends Kohana_URL {

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

}

ほとんどの場合、3 行のコードの価値があります。Kohana は、コア クラスをオーバーライドできるように設計されています。コードの保守性が向上します。

于 2012-05-15T22:31:59.733 に答える