[PHP]フォームの値が整数かどうかチェックする関数_その2
Read More
前回からの続き
欲しい機能は以下のもの。
・フォームから受け取った値が"整数"かどうか判定する
・"整数"として扱えれば型はstring型、int型どちらでも良い
もう少しざっくり言うと、
-100と0と100が許可できればいいんだよ。
空文字、null、+100は"整数"じゃないのでダメ。
さて、PHP関数を調べていたら似たような機能を提供しているものがあった。
# 昔使ったことがあったけど忘れてた
その名は、
ctype_digit()
だけど調べていくうちにこれも色々問題があった。
うーん、int型で渡すとfalseが出るのはまあいいんだけど、
Verで差異があるのと負数に対応してないのはちょっとなあ…
てことでやっぱりこれもそのままでは使えません。
--
自作関数 isAboutInt()のネーミングの話。
既に数値チェック系関数てのは世の中にいっぱいあってどれも名前が似てたりする。
isN()とかisNum()とかisInt()とかisIntNum()とかisNan()とか。
これらに近い名前を使うと自分が挙動を勘違いしてしまう恐れがあったので、
かぶらない名前=isAboutInt()
にしている。
そもそも"整数"は英語で言うと"integer"なので、
intって言葉を安易に使うと、例えばisInt()とかまんまだと、
これは"型"のことを指しているんだなと考えてしまいそう。
今回の関数は、値の見た目が整数なら"型"は気にしないわけだし、
そういう意味でAboutって付けてる。
About=おおよそ
おおよそ、おおよそ、
欲しい機能は以下のもの。
・フォームから受け取った値が"整数"かどうか判定する
・"整数"として扱えれば型はstring型、int型どちらでも良い
もう少しざっくり言うと、
-100と0と100が許可できればいいんだよ。
空文字、null、+100は"整数"じゃないのでダメ。
さて、PHP関数を調べていたら似たような機能を提供しているものがあった。
# 昔使ったことがあったけど忘れてた
その名は、
ctype_digit()
だけど調べていくうちにこれも色々問題があった。
・Verによって挙動の差異がある PHP 5.1.0 より前のバージョンでは、この関数は text が空文字列の場合に TRUE を返す。 ・仮引数は必ず文字列型として渡す必要がある int型で値を渡すとfalseが返る。 ・自然数にのみ対応 負数に対応していない。マイナスには使えない。
うーん、int型で渡すとfalseが出るのはまあいいんだけど、
Verで差異があるのと負数に対応してないのはちょっとなあ…
てことでやっぱりこれもそのままでは使えません。
--
自作関数 isAboutInt()のネーミングの話。
既に数値チェック系関数てのは世の中にいっぱいあってどれも名前が似てたりする。
isN()とかisNum()とかisInt()とかisIntNum()とかisNan()とか。
これらに近い名前を使うと自分が挙動を勘違いしてしまう恐れがあったので、
かぶらない名前=isAboutInt()
にしている。
そもそも"整数"は英語で言うと"integer"なので、
intって言葉を安易に使うと、例えばisInt()とかまんまだと、
これは"型"のことを指しているんだなと考えてしまいそう。
今回の関数は、値の見た目が整数なら"型"は気にしないわけだし、
そういう意味でAboutって付けてる。
About=おおよそ
おおよそ、おおよそ、
Category "PHP" の最新記事
- [PHP]FuelPHPでRequestクラスのレスポンス内容がおかしくなる (0)
- [PHP]null値ならデフォルト値を返すifnull()の使い方 (0)
- [PHP]効率よくFTP上のファイルの存在を確認する方法 (0)
- [PHP]効率よくFTP上のファイル情報を取得する方法 (0)
- シェルで文字に色を付ける方法と色の種類 (0)
- [PHP]フォルダパスの末尾のスラッシュを削除する (0)
- [PHP]ZipArchiveクラスを使ってzipファイルを作成する (0)
- [PHP]ZipArchiveクラスを使ってzipファイルを解凍する (0)
- [PHP]ディレクトリを再帰的に削除する_SPL版 (0)
- [PHP]ディレクトリを再帰的に削除する (0)