カスタム関数呼び出し
$db->callFunction()
この関数を使用すると、CodeIgniter にネイティブに含まれていない PHP データベース関数を、プラットフォームに依存しない方法で呼び出すことができます。たとえば、CodeIgniter がネイティブでサポートしていない mysql_get_client_info()
関数を呼び出したいとします。次のように実行できます。
<?php
$db->callFunction('get_client_info');
最初のパラメーターには、mysql_
プレフィックスなしで、関数名を指定する必要があります。プレフィックスは、現在使用されているデータベースドライバーに基づいて自動的に追加されます。これにより、異なるデータベースプラットフォームで同じ関数を実行できます。明らかに、プラットフォーム間で関数呼び出しがすべて同じであるとは限らないため、移植性の点でこの関数がどれほど有用であるかには限界があります。
呼び出している関数に必要なパラメーターは、2番目のパラメーターに追加されます。
<?php
$db->callFunction('some_function', $param1, $param2 /* , ... */);
多くの場合、データベース接続 ID またはデータベース結果 ID を指定する必要があります。接続 ID には次を使用してアクセスできます。
<?php
$db->connID;
結果 ID は、次のように結果オブジェクト内からアクセスできます。
<?php
$query = $db->query('SOME QUERY');
$query->resultID;