ホームページ >バックエンド開発 >PHPチュートリアル >CodeIgniter補助機能ヘルパーの使い方を詳しく解説

CodeIgniter補助機能ヘルパーの使い方を詳しく解説

WBOY
WBOYオリジナル
2016-07-25 08:52:591893ブラウズ
  1. $this->load->helper('name');
コードをコピーします

ここで、name はヘルパー関数ファイルの名前です (.php 接尾辞と "helper" は付きません)一部)。

たとえば、ファイル名 url_helper.php の URL ヘルパーをロードするには、次のステートメントを使用できます。

  1. $this->load->helper('url');
コードをコピー

ヘルパー関数は、ビューファイルにロードされても、コントローラーのどこにでもロードできます(ロードされていません)これはお勧めしません)。 ヘルパー関数を使用する前にロードしてください。これらをコントローラー コンストラクターにロードすると、ヘルパー関数が他の関数の前に自動的にロードされるようになります。必要な場所にヘルパー関数をロードすることもできます。

注: ヘルパー関数のロード関数は値を返さないため、値を変数に割り当てようとせず、このように使用してください。

3. 複数の補助機能をロードする 複数のヘルパー関数を一度にロードしたい場合は、次のようにすることができます。

  1. $this->load->helper( array('helper1', 'helper2', 'helper3') );
コード

4 をコピーし、ヘルパー関数を自動的にロードします CodeIgniter は、必要に応じてヘルパー関数を自動的にロードできます。これを行うには、application/config/autoload.php を開いて、ヘルパー関数を autoload 配列に追加します。

5、補助機能を使用する 使用するヘルパー関数ファイルをロードしたら、標準の関数呼び出しメソッドを使用して、内部の関数を使用できます。 たとえば、anchor() 関数を使用してリンクを作成するには、View ファイルで次のようにします。

  1. echoアンカー('blog/comments', 'ここをクリック');
  2. ?>
コードをコピー

「ここをクリック」はリンクの名前です。 blog/comments」はリンクのURIです。 (Programmer’s Home bbs.it-home.org によって収集および整理されています) 注: 補助関数内の関数名の命名規則に従うことが最善です。複数の補助関数ファイルが同時にロードされ、同じ名前の関数が存在する場合、CI で空白ページの問題が発生します (これも同様です)。 PHP 構文エラー)。

6、「拡張」補助機能 元のヘルパーを「拡張」したい場合は、application/helpers/ ディレクトリに新しいヘルパーを作成できます。新しいヘルパーの名前は、「拡張」ヘルパーの名前の先頭に MY_ を追加します (これは設定可能です。以下を参照してください。) たとえば、1 つまたは 2 つの新しいメソッドを追加したり、メソッドを変更したりするなど、元のヘルパーにいくつかの新しい関数を追加するだけの場合は、独自のヘルパーを書き直す価値はありません。この場合、既存のヘルパーを「拡張」する方が良いでしょう。ヘルパーのメソッドは手続き型で個別であり、従来の言語環境では「拡張」できないため、ここでは「拡張」という言葉はあまり適切ではありません。ただし、CodeIgniter ではヘルパー メソッドを追加または変更できます。 たとえば、ローカルの既存の配列ヘルパーを拡張するには、application/helpers/MY_array_helper.php というファイルを作成し、そのメソッドの一部を追加またはオーバーライドします。

  1. // any_in_array() は配列ヘルパーにないので、新しい関数を定義します
  2. function any_in_array($needle, $haystack)
  3. {
  4. $needle = (is_array($needle)) ? : array($needle);
  5. foreach ($needle as $item)
  6. {
  7. if (in_array($item, $haystack))
  8. {
  9. return TRUE;
  10. }
  11. }
  12. return FALSE;
  13. }
  14. //random_element () は配列ヘルパーに含まれているため、ネイティブ関数をオーバーライドします
  15. function random_element($array)
  16. {
  17. shuffle($array);
  18. return array_pop($array);
  19. }
コードをコピー

7 、プレフィックス(Prefix)を設定します ヘルパーを「拡張」するために使用されるプレフィックス付きファイルも、ライブラリおよびコア クラスの拡張です。 カスタム プレフィックスを設定するには、application/config/config.php ファイルを開いて以下を見つけてください。

  1. $config['subclass_prefix'] = 'MY_';
コードをコピー

注: CodeIgniter のすべての組み込みライブラリは CI_ のような接頭辞で名前が付けられているため、CI を使用しないでください。接頭辞。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。