PHPで数値チェック
2014/06/06
ページング情報だったりフォーム情報だったりで、
数値かどうかをチェックしたかった。
調べるとis_numericがいいみたい。
■リファレンス
http://www.php.net/manual/ja/function.is-numeric.php
if ($_GET['page']) {
$page = $_GET['page'];
} else {
$page = 0;
}
みたいな感じで、ページング情報をクエリで持ってきて
クエリがあって尚且つ数値の場合は$pageに格納、
それ以外の場合は強制的に1ページ目を表示するような形。
あとついでにis_intという関数もあって、これでいいんじゃないの?
と思ったらどうもダメらしい。
■リファレンス
http://php.net/manual/ja/function.is-int.php
「注意:
変数が数値もしくは数値形式の文字列の場合 (フォームからの入力の場合は 常に文字列となります) 、
is_numeric() を使用する必要があります。 」
という注意書きがあった。
クエリやったら大丈夫だろうけど、フォーム情報を
扱う場合はダメらしい。フォームからの入力は
常に文字列になる、というのは知らなかった。
関連記事
PHPでユニークな文字列の作成
PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...
PHPでaタグにnofollowを付ける
タイトルそのまま、リンクがあった場合に nofollowつけてくれ、というもの。 ...
PHPでファイルをダウンロードさせる
集計ページみたいなんがあった。その集計ページを CSV化したいと言われた。 ■ソ ...
PHPページングテンプレ
使いやすいのがあったのでメモ。 $page ...
MySQLiでFOUND_ROWS(全件数取得)
MySQLiでFOUND_ROWS(全件数取得)。 $sql = ' SELEC ...