正規表現 値を数値のみにする

2014-08-14

電話番号をデータベースに追加する時は、「-」(ハイフン)をなくしたほうが検索の際に使い勝手がよくなる。下記は変数を半角数値のみにするユーザー定義関数で、ついでに全角数字を半角にする処理もしている。 phpStart function numOnly($str){ if($str){ $str = mb_convert_kana(trim($str),'n','utf8'); //全角数字を半角数字に $num = preg_replace("/[^0-9]+/", "", $str); } return $num; } $str = '090-9999-99...

管理画面などにて画像が切り替わらない場合の対処法

2014-08-14


管理画面で画像を変更する処理をした際に、変更後の画面で画像がキャッシュのせいで古い状態のままになることがある。その場合の一番簡単な方法は、画像にランダムなパラメータを付け、新しい画像だとプラウザに認識させるといい。 phpStart $rand = rand(0,999999); echo ''; phpEnd これは管理画面での基本的なテクニックなので、必ず覚えておかないといけない。 ...

完全な空チェック ~ 確実な0(ゼロ)判定、null判定をする方法

2014-08-14

phpStart $num = 0; if($num){ 処理されない... } phpEnd 上記の分岐分は処理されないコードの一例。「0」はfalseと判定されるのがPHPの仕様である。 しかし、「0」はtureと判定し、変数が空の場合のみfalseと判定したい時が多々出てくる。 そこで、よく出てくるなら関数化をしておくのがオススメ。 phpStart function karaChk($str){ if(!is_null($str) && $str !== ""){ $flag = true; }else{ $flag = false; ...

外部サイト(他ドメイン)のファイル存在確認

2013-05-05

画像ファイルがあるかないかを判断して、必要に応じてノーイメージ(now printing)を表示する時などに使用するファイル存在確認の代表的関数file_exists()。 phpStart $path = './log/item/12345.jpg'; if(file_exists($path)){ $img = $path; }else{ $img = '/img/noimage.jpg'; } phpEnd しかし、自サーバーならfile_exists関数でファイルがあるかないかを判断できるが、他ドメイン&他サーバーでは使用できないので、その場合はget_hea...

関数の引数(ひきすう)・戻り値(もどりち)について

2012-11-19

引数とは…戻り値とは…と言葉で書いてもパッとしなさそうなので、半角のカタカナを全角のカタカナに変換するmb_convert_kana関数を例として見てみよう。 phpStart $zenkaku = mb_convert_kana($hankaku, "KV"); //$hankaku が第一引数 //KV が第二引数 //$zenkaku が戻り値 phpEnd これで用語の意味は分かるかと思います。自分で関数を作る(ユーザー定義関数)時はこの引数と戻り値のことを理解しておかないと便利なものは作れない。 個人的にフレームワークの使い方を覚えるのが面倒なので、自作関数の...

QRコードを手っ取り早く作る方法

2012-11-02


Google Chart APIを利用すればたった一行でQRコードが作れます。 htmlStart https://chart.apis.google.com/chart?chs=《サイズ》&cht=qr&chl=《URLやメールアドレスなど》 htmlEnd 画像タグに上記のコードを記載するだけ。 htmlStart htmlEnd パラメータの「chl」には日本語を使うこともできます。mailtoタグと同様で日本語を使う場合は文字化けの対処をしないといけないので、文字コードをパラメータの「choe」で指定しないといけない。 QRコードは携帯やスマホで読み取られる...

現在のURLやファイル名の取得とリファラーの取得方法

2012-10-24

システムを構築中に今現在のURL(自身のURL)やファイル名を取得したいというケースがちょくちょく出てきます。サーバ環境変数に格納されているので取得は簡単です。 phpStart /* 現在のURLが以下だった場合 https://pinkmonky.net/test.php?id=47&cate=5 */ echo $_SERVER['SERVER_NAME']; echo $_SERVER['REQUEST_URI']; echo $_SERVER['PHP_SELF']; echo $_SERVER["SCRIPT_NAME"]; //表示結果 blog.p...

メールアドレスの書式が正しいかチェックする正規表現

2012-10-18

メールアドレスの書式チェックの方法をネットで調べると、preg_match関数を使用した正規表現チェックのコードがいくつか出てくるのだが、どれも同じコードではない為、どれが一番正確なのかはよく分からない。そこで、信用できそうなコードをご紹介。 (adsbygoogle = window.adsbygoogle || []).push({}); どうやら、docomoは「da.me..@docomo.ne.jp」といったRF2822非準拠の携帯メールアドレスが取得できるらしいので、docomoのせいでちょっとややこしいようだ。 ↓ドコモのメールアドレスの取得は以下が可能↓ ...

【PHP】内容に日本語が含まれているかを調べる方法

2012-10-18


メールフォームならメールアドレスは見えないのでスパムは届きにくくなるが、最近内容が英語だけのスパムメールが届くようになった。簡単な処置として、内容に日本語が含まれているかを調べて、英語だけの場合は送信しないという分岐を追加することに。 どうやって全角の文字があるかどうか調べるかというと、文字数を数える『strlen関数』と『mb_strlen関数』を使用して、マルチバイトが含まれているかどうかを調べます。 phpStart if(strlen($body) == mb_strlen($body,'utf8')) { //全部英語(全てシングルバイト) }else{ //日本...

phpMyAdminでインデックスの削除をする方法

2012-10-12


ローカルのxampp環境でphpMyAdmin3.1.3.1を使用しているのだが、プライマリー・ユニーク・インデックスのキー操作をしようとしたが、全然操作するメニューが見当たらなかった。 と、どうやらブラウザの問題だったようで、IEではそもそもメニューが表示されていなかった。mootools.jsを使用している画面なのでIEが対応していないみたいである。...

この記事がお役に立てましたら是非シェアのご協力お願いします。