ファイルを読み込みます。
import('app/config.php') //「app/config.php」を読み込む
import('app/views/header.php') //「app/views/header.php」を読み込む
文字コードを変換します。
$converted = convert($data, 'UTF-8', 'EUCJP-WIN'); //「EUCJP-WIN」から「UTF-8」に変換
代替文字を設定します。
$data = alt($data, '-'); //$dataがnullか空文字なら「-」が設定される
長い文字列を省略します。
$data = truncate($data, 20); //$dataが20文字以上なら省略される
テキストを出力します。(echo()
でそのまま表示されます。)
e('テキスト') //テキストを出力
入力欄用のテキストを作成&出力します。(htmlspecialchars()
が適用されます。)
t('テキスト') //テキストを出力
$text = t('テキスト', true) //テキストを作成
表示用のテキストを作成&出力します。(htmlspecialchars()
と nl2br()
が適用されます。)
h('テキスト') //テキストを出力
$html = h('テキスト', true) //テキストを作成
日時を取得します。
localdate() //タイムスタンプを取得
localdate('Y-m-d H:i:s') //フォーマットして取得
localdate('Y年m月d日 H時i分s秒', 1375335520) //タイムスタンプからフォーマットして取得
localdate('Y年m月d日 H時i分s秒', '2013-08-01 14:38:40') //文字列からフォーマットして取得
この関数の時差は config.php
の MAIN_TIME
で調整出来ます。(date_default_timezone_set()
など、他の方法でも可能。)
アクセス元のIPアドレスを取得します。(この機能はVer6.1以降で対応しています。)
clientip() //IPアドレスを取得
clientip(true) //プロキシを考慮してIPアドレスを取得
SSL接続か否かを判定します。(この機能はVer6.5以降で対応しています。)
if (ssl()) { //SSL接続か否かを判定
//SSL接続である
} else {
//SSL接続でない
}
if (ssl(true)) { //プロキシを考慮してSSL接続か否かを判定
//SSL接続である
} else {
//SSL接続でない
}
ワンタイムトークンを扱います。token('create')
でトークンを発行し、フォームなどから送信し、$_REQUEST['token']
で受信して、token('check')
で確認できます。
二重投稿防止機能としてではなく、CSRF対策として実装しています。
$token = token('create') //ワンタイムトークンを発行
$flag = token('check') //ワンタイムトークンを確認
リダイレクトします。
redirect('http://www.example.com/sample.html') //外部ページへリダイレクト
redirect('/message/list') //内部ページヘリダイレクト
配列の内容を表示します。
debug(表示したい配列)
$array = debug(表示したい配列, true)
ログを記録します。記録先は config.php
の LOGGING_PATH
で指定します。
logging('記録したいメッセージ')
処理完了ページ(正常終了)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml
を指定するとXML形式で、type=json
を指定するとJSON形式で表示します。(関数の第1引数で、xml
か json
を指定することもできます。)
app/views/ok.php
があるとHTML画面のビューとして使われます。
また、/test1
や /test1/test2
へのリクエストの場合、app/views/ok_test1.php
があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)
ok()
ok('json')
処理完了ページ(警告あり)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml
を指定するとXML形式で、type=json
を指定するとJSON形式で表示します。(関数の第2引数で、xml
か json
を指定することもできます。)
警告メッセージは文字列と配列のどちらでも渡すことができます。入力チェックエラーなど、問題があっても引き続きチェックを行ってまとめてエラーを表示する用途を想定しています。
app/views/warning.php
があるとHTML画面のビューとして使われ、$view['messages']
にエラー内容が格納されます。
また、/test1
や /test1/test2
へのリクエストの場合、app/views/warning_test1.php
があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)
warning('警告メッセージ')
warning('警告メッセージ', 'json')
処理完了ページ(エラーあり)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml
を指定するとXML形式で、type=json
を指定するとJSON形式で表示します。(関数の第2引数で、xml
か json
を指定することもできます。)
エラーメッセージは文字列のみ渡すことができます。不正アクセスエラーなど、問題があった時に即座に処理を停止してエラーを表示する用途を想定しています。
app/views/error.php
があるとHTML画面のビューとして使われ、$view['message']
にエラー内容が格納されます。
また、/test1
や /test1/test2
へのリクエストの場合、app/views/error_test1.php
があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)
error('エラーメッセージ')
error('エラーメッセージ', 'json')
データベースに命令を渡します。
$resource = db_query('SELECT * FROM members;');
データベースから結果を受け取ります。
$resource = db_query('SELECT * FROM members;');
$results = db_result($resource);
print_r($results);
データベースから結果件数を受け取ります。
$resource = db_query('SELECT * FROM members;');
$count = db_count($resource);
データベースに渡す値をエスケープします。
$string = db_escape('Whats\'s New!');
エスケープした値を元に戻します。
$string = db_unescape($string);
プレースホルダを展開します。
$queries = db_placeholder(array(
'where' => array('id >= :? AND id <= :?', array(1, 10)),
));
エラーを表示します。
echo db_error();
トランザクションを開始します。
db_transaction()
トランザクションをコミットします。
db_commit()
トランザクションをロールバックします。
db_rollback()
乱数を作成します。
$count = rand_number(); //0以上の乱数を作成します。
$count = rand_number(5, 10); //5以上10以下の乱数を作成します。
ランダムな文字列を作成します。
$string = rand_string() //32文字位内のランダムな文字列を作成します。
$string = rand_string(5) //5文字位内のランダムな文字列を作成します。
期待する値と等しいかテストします。(単体テスト用。)
期待する値と等しくないかテストします。(単体テスト用。)
期待する値より大きかテストします。(単体テスト用。)
期待する値以上かテストします。(単体テスト用。)
期待する値より小さいかテストします。(単体テスト用。)
期待する値以下かテストします。(単体テスト用。)
期待する値を含むかテストします。(単体テスト用。)
期待する値を含まないかテストします。(単体テスト用。)
期待する値が正規表現にマッチするかテストします。(単体テスト用。)
期待する値が正規表現にマッチしないかテストします。(単体テスト用。)
期待する配列のキーが存在するかテストします。(単体テスト用。)
期待する配列のキーが存在しないかテストします。(単体テスト用。)
期待する配列の値が存在するかテストします。(単体テスト用。)
期待する配列の値が存在しないかテストします。(単体テスト用。)
ハッシュを扱う命令が提供されます。
ハッシュ用のソルトを取得します。
echo hash_salt();
文字列のハッシュを取得します。
echo hash_crypt('文字列', 'ソルト');
文字列を扱う命令が提供されます。
文字列内のURLをリンクします。
echo string_autolink('文字列');
ファイルを扱う命令が提供されます。
ファイルのサイズ(幅・高さ・容量)を取得します。
list($width, $height, $size) = file_info('ファイルのパス');
ファイルのマイムタイプを取得します。
$mimetype = file_mimetype('ファイル名');
画像ファイルをリサイズします。
$result = file_resize('ファイルのパス', '出力先', '幅', '高さ');
CSVファイルから1行読み込みます。
$csv_data = file_getcsv('ファイルハンドル');
ディレクトリを扱う命令が提供されます。
ディレクトリの容量を取得します。
$size = directory_info('ディレクトリのパス');
ディレクトリを作成します。
$result = directory_mkdir('ディレクトリのパス', 'パーミッション');
ディレクトリを削除します。
$result = directory_rmdir('ディレクトリのパス');
Cookieを扱う命令が提供されます。
Cookieをセットします。
$result = cookie_set('キー', '値', '有効期限');
メールを扱う命令が提供されます。
メールを送信します。
$result = mail_send('送信先アドレス', '題名', '本文', 'メールヘッダ', '添付ファイル');
ユーザーインターフェースを扱う命令が提供されます。
ページャーを取得します。
$pager = ui_pager('オプション');
日時選択の入力フォームを取得します。
$input = ui_datetime('日時やタイムスタンプ', '取得形式', 'オプション');