私はコハナが初めてで、比較的phpも初めてです。
PHP のものとは異なり、JS %100 のものを模倣する単純な URI エンコーディング関数があります。
この関数を特定のクラスで使用したいのですが、それらのすべてで定義したくありません。
では、すべての場所で使用されるグローバル関数を定義するにはどうすればよいでしょうか?
(3 行のコード関数のクラスを作成したくありません)
ありがとうございました!
コアURLヘルパー クラスをオーバーロードします。関数を静的メソッドとして追加します。
良い OO 原則を避けたいというあなたの願望を覆してください。新しいクラスを作成し、静的パブリック関数を作成します。古き良きグローバル関数を作成しないでください。
<?php
function yourFunction( ) {
return 'your result';
}
どのようにそのことについて?常に含まれるファイルにそれを書き込むだけで、準備は完了です。OOを実行していると考えるためだけに、静的クラスを作成しないでください。意味がありません。
ブートストラップ ( ) にグローバル関数を配置できますが、次APPPATH/bootstrap.php
の場所に新しいファイルを作成してコア URL ヘルパー クラスを拡張することをお勧めします (Kohana 3.x を使用していると仮定します) APPPATH/classes/url.php
。
class URL extends Kohana_URL {
public static function encode($uri)
{
// ...
}
}
ほとんどの場合、3 行のコードの価値があります。Kohana は、コア クラスをオーバーライドできるように設計されています。コードの保守性が向上します。