PDO->sqliteCreateFunction()とは? わかりやすく解説

Weblio 辞書 > コンピュータ > PHP関数リファレンス > PDO->sqliteCreateFunction()の意味・解説 

PDO->sqliteCreateFunction()

(No version information available, might be only in CVS)
PDO->sqliteCreateFunction() — SQL 文で使用するユーザ定義関数 (UDF) を登録する

説明

class PDO {
bool sqliteCreateFunction ( string function_name, callback callback [, int num_args] )
}
警告
この関数は、 実験的 なものです。この関数の動作・ 名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 この関数は自己責任で使用してください。

このメソッドを使用すると、 PHP の関数を、UDF (User Defined Function: ユーザ定義関数) として SQLite に登録できるようになります。 登録した関数は、SQL 文の中で使用することが可能です。
UDF は、関数をコールできるあらゆる SQL 文 (SELECT および UPDATE 文、そしてトリガなど) で使用することが可能です。

パラメータ

function_name
SQL 文で使用する関数の名前。
callback
定義した SQL 関数を処理するコールバック関数。
注意: コールバック関数の返す値は、SQLite が理解できる形式 (すなわち スカラー型) でなければなりません。
num_args
コールバック関数があらかじめ定義済みの引数を受け取る場合に、 SQLite のパーサに渡すヒント。

注意: (MySQL のような)他のデータベースエクステンションとの互換性のため、 2 種類の構文がサポートされています。 推奨されるのは最初の構文で、dbhandle パラメータを 関数の最初のパラメータとするものです。

例 2196. PDO::sqliteCreateFunction() の例
<?php
function md5_and_reverse($string)
{
   return strrev(md5($string));
}

$db = new PDO('sqlite:sqlitedb');
$db->sqliteCreateFunction('md5rev', 'md5_and_reverse', 1);
$rows = $db->query('SELECT md5rev(filename) FROM files')->fetchAll();
?>


この例では、文字列の md5 を計算してそれを反転させる関数を定義しています。 SQL 文が実行されると、filename をこの関数で変換した値が返されます。 $rows に返されるデータの中に、処理結果が含まれます。
この方法を使用すると、データを取得した後に foreach() で結果をひとつひとつ処理していく必要がなくなり、美しいコードが記述できます。

ティップ

PDO->sqliteCreateFunction() および PDO->sqliteCreateAggregate() を使用して、 SQLite のネイティブ SQL 関数を上書きすることができます。
注意: このメソッドは、SQLite2 ドライバでは使用できません。 代わりに、古い形式の sqlite API を使用してください。

参考

PDO->sqliteCreateAggregate()
sqlite_create_function()
sqlite_create_aggregate()



このページでは「PHP関数リファレンス」からPDO->sqliteCreateFunction()を検索した結果を表示しています。
Weblioに収録されているすべての辞書からPDO->sqliteCreateFunction()を検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からPDO->sqliteCreateFunction() を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「PDO->sqliteCreateFunction()」の関連用語

PDO->sqliteCreateFunction()のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



PDO->sqliteCreateFunction()のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2025 by the PHP Documentation Group.

©2025 GRAS Group, Inc.RSS