levis: PHP Framework 説明書

リファレンス

目次に戻る

フレームワークから提供される命令

import()

ファイルを読み込みます。

import('app/config.php')  //「app/config.php」を読み込む
import('app/views/header.php')  //「app/views/header.php」を読み込む

convert()

文字コードを変換します。

$converted = convert($data, 'UTF-8', 'EUCJP-WIN');  //「EUCJP-WIN」から「UTF-8」に変換

alt()

代替文字を設定します。

$data = alt($data, '-');  //$dataがnullか空文字なら「-」が設定される

truncate()

長い文字列を省略します。

$data = truncate($data, 20);  //$dataが20文字以上なら省略される

e()

テキストを出力します。(echo() でそのまま表示されます。)

e('テキスト')  //テキストを出力

t()

入力欄用のテキストを作成&出力します。(htmlspecialchars() が適用されます。)

t('テキスト')  //テキストを出力
$text = t('テキスト', true)  //テキストを作成

h()

表示用のテキストを作成&出力します。(htmlspecialchars()nl2br() が適用されます。)

h('テキスト')  //テキストを出力
$html = h('テキスト', true)  //テキストを作成

localdate()

日時を取得します。

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.phpMAIN_TIME で調整出来ます。(date_default_timezone_set() など、他の方法でも可能。)

clientip()

アクセス元のIPアドレスを取得します。(この機能はVer6.1以降で対応しています。)

clientip()  //IPアドレスを取得
clientip(true)  //プロキシを考慮してIPアドレスを取得

ssl()

SSL接続か否かを判定します。(この機能はVer6.5以降で対応しています。)

if (ssl()) {  //SSL接続か否かを判定
    //SSL接続である
} else {
    //SSL接続でない
}
if (ssl(true)) {  //プロキシを考慮してSSL接続か否かを判定
    //SSL接続である
} else {
    //SSL接続でない
}

token()

ワンタイムトークンを扱います。token('create') でトークンを発行し、フォームなどから送信し、$_REQUEST['token'] で受信して、token('check') で確認できます。

二重投稿防止機能としてではなく、CSRF対策として実装しています。

$token = token('create')  //ワンタイムトークンを発行
$flag = token('check')  //ワンタイムトークンを確認

redirect()

リダイレクトします。

redirect('http://www.example.com/sample.html')  //外部ページへリダイレクト
redirect('/message/list')  //内部ページヘリダイレクト

debug()

配列の内容を表示します。

debug(表示したい配列)
$array = debug(表示したい配列, true)

logging()

ログを記録します。記録先は config.phpLOGGING_PATH で指定します。

logging('記録したいメッセージ')

ok()

処理完了ページ(正常終了)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml を指定するとXML形式で、type=json を指定するとJSON形式で表示します。(関数の第1引数で、xmljson を指定することもできます。)

app/views/ok.php があるとHTML画面のビューとして使われます。

また、/test1/test1/test2 へのリクエストの場合、app/views/ok_test1.php があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)

ok()
ok('json')

warning()

処理完了ページ(警告あり)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml を指定するとXML形式で、type=json を指定するとJSON形式で表示します。(関数の第2引数で、xmljson を指定することもできます。)

警告メッセージは文字列と配列のどちらでも渡すことができます。入力チェックエラーなど、問題があっても引き続きチェックを行ってまとめてエラーを表示する用途を想定しています。

app/views/warning.php があるとHTML画面のビューとして使われ、$view['messages'] にエラー内容が格納されます。

また、/test1/test1/test2 へのリクエストの場合、app/views/warning_test1.php があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)

warning('警告メッセージ')
warning('警告メッセージ', 'json')

error()

処理完了ページ(エラーあり)を表示します。画面はHTMLで表示されますが、GETかPOSTのリクエストで type=xml を指定するとXML形式で、type=json を指定するとJSON形式で表示します。(関数の第2引数で、xmljson を指定することもできます。)

エラーメッセージは文字列のみ渡すことができます。不正アクセスエラーなど、問題があった時に即座に処理を停止してエラーを表示する用途を想定しています。

app/views/error.php があるとHTML画面のビューとして使われ、$view['message'] にエラー内容が格納されます。

また、/test1/test1/test2 へのリクエストの場合、app/views/error_test1.php があると優先してHTML画面のビューとして使われます。(Ver6.8以降。)

error('エラーメッセージ')
error('エラーメッセージ', 'json')

db_query()

データベースに命令を渡します。

$resource = db_query('SELECT * FROM members;');

db_result()

データベースから結果を受け取ります。

$resource = db_query('SELECT * FROM members;');
$results = db_result($resource);
print_r($results);

db_count()

データベースから結果件数を受け取ります。

$resource = db_query('SELECT * FROM members;');
$count = db_count($resource);

db_escape()

データベースに渡す値をエスケープします。

$string = db_escape('Whats\'s New!');

db_unescape()

エスケープした値を元に戻します。

$string = db_unescape($string);

db_placeholder()

プレースホルダを展開します。

$queries = db_placeholder(array(
    'where' => array('id >= :? AND id <= :?', array(1, 10)),
));

db_error()

エラーを表示します。

echo db_error();

db_transaction()

トランザクションを開始します。

db_transaction()

db_commit()

トランザクションをコミットします。

db_commit()

db_rollback()

トランザクションをロールバックします。

db_rollback()

rand_number()

乱数を作成します。

$count = rand_number();  //0以上の乱数を作成します。
$count = rand_number(5, 10);  //5以上10以下の乱数を作成します。

rand_string()

ランダムな文字列を作成します。

$string = rand_string()  //32文字位内のランダムな文字列を作成します。
$string = rand_string(5)  //5文字位内のランダムな文字列を作成します。

test_equals()

期待する値と等しいかテストします。(単体テスト用。)

test_not_equals()

期待する値と等しくないかテストします。(単体テスト用。)

test_greaterthan()

期待する値より大きかテストします。(単体テスト用。)

test_greaterthanorequal()

期待する値以上かテストします。(単体テスト用。)

test_lessthan()

期待する値より小さいかテストします。(単体テスト用。)

test_lessthanorequal()

期待する値以下かテストします。(単体テスト用。)

test_contains()

期待する値を含むかテストします。(単体テスト用。)

test_not_contains()

期待する値を含まないかテストします。(単体テスト用。)

test_regexp()

期待する値が正規表現にマッチするかテストします。(単体テスト用。)

test_not_regexp()

期待する値が正規表現にマッチしないかテストします。(単体テスト用。)

test_array_haskey()

期待する配列のキーが存在するかテストします。(単体テスト用。)

test_array_not_haskey()

期待する配列のキーが存在しないかテストします。(単体テスト用。)

test_array_subset()

期待する配列の値が存在するかテストします。(単体テスト用。)

test_array_not_subset()

期待する配列の値が存在しないかテストします。(単体テスト用。)

フレームワークから提供されるプラグイン

hash.php

ハッシュを扱う命令が提供されます。

hash_salt()

ハッシュ用のソルトを取得します。

echo hash_salt();
hash_crypt()

文字列のハッシュを取得します。

echo hash_crypt('文字列', 'ソルト');

string.php

文字列を扱う命令が提供されます。

string_autolink()

文字列内のURLをリンクします。

echo string_autolink('文字列');

file.php

ファイルを扱う命令が提供されます。

file_info()

ファイルのサイズ(幅・高さ・容量)を取得します。

list($width, $height, $size) = file_info('ファイルのパス');
file_mimetype()

ファイルのマイムタイプを取得します。

$mimetype = file_mimetype('ファイル名');
file_resize()

画像ファイルをリサイズします。

$result = file_resize('ファイルのパス', '出力先', '幅', '高さ');
file_getcsv()

CSVファイルから1行読み込みます。

$csv_data = file_getcsv('ファイルハンドル');

directory.php

ディレクトリを扱う命令が提供されます。

directory_info()

ディレクトリの容量を取得します。

$size = directory_info('ディレクトリのパス');
directory_mkdir()

ディレクトリを作成します。

$result = directory_mkdir('ディレクトリのパス', 'パーミッション');
directory_rmdir()

ディレクトリを削除します。

$result = directory_rmdir('ディレクトリのパス');

cookie.php

Cookieを扱う命令が提供されます。

cookie_set()

Cookieをセットします。

$result = cookie_set('キー', '値', '有効期限');

mail.php

メールを扱う命令が提供されます。

mail_send()

メールを送信します。

$result = mail_send('送信先アドレス', '題名', '本文', 'メールヘッダ', '添付ファイル');

ui.php

ユーザーインターフェースを扱う命令が提供されます。

ui_pager()

ページャーを取得します。

$pager = ui_pager('オプション');
ui_datetime()

日時選択の入力フォームを取得します。

$input = ui_datetime('日時やタイムスタンプ', '取得形式', 'オプション');
Copyright © 2002-2016 refirio.org, All rights reserved.