PHP
(Sorry this article is written in Japanese, If you need English explanation)*1Memcacheを導入し、早速使おうとしたときに表題のエラーが。 スクリプト 実行すると PHP Notice: Memcache::getversion(): Server localhost (tcp 11211) failed with: Fail…
http://d.hatena.ne.jp/hi-hats/20130324/1364115800 にて、指定日が祝日かどうかを判定するスクリプトを作りました function isJPNationalHoliday(){ これを利用して、指定日が土日祝日かどうかを判定するスクリプト を作成し、さらにこれを利用して 次の営…
Google Calendar API から日本の祝日データを取得 こちらに一定期間の祝日を全て取得するスクリプトを掲載していただいていました。感謝。ただ個人的には、ずばりターゲットのその日一日が祝日かどうかだけを取りたかったので、若干カスタマイズさせていただ…
prev(),next()のような配列の内部ポインタを操作する関数を使い、 foreachループの中で再度繰り返しやスキップなどをさせたい (スキップはcontinueでもOKだけど)しかし foreach は内部の配列ポインタに依存するので、 ループ内で配列ポインタを変更すると…
XMLの解析に便利なXML_Unserializer unserialize($response_body); $result = $UNSERIALIZER->getUnserializedData(); みたいに使います。ところが一つ問題があって、 Array ( [item] => Array ( [0] => Array ( [id] => 1001 [datetime] => 2012-02-08 19:1…
使用メモリがphp.iniの設定値を超えた場合に出る表題エラーですが、 出現箇所が、pear/DBやMDBといったDBライブラリの中で出る場合があります。 このような場合は、DBアクセスしている箇所といった特定しかできず、複雑な処理であれば突き止めるのは困難。 …
本当は取得できると思うんですが、原因がわからず、調べてもよくわからなかったので、 無理やり自作しました。 $sql:プリペアされるクエリ $pa:プレースホルダーに入るパラメータ last_query = $sql; と…
かorかも含め、「どっちでもいいや」って声も耳にします。 まぁ大半はどっちでもいいケースでしょうけど、違いを分かっていないとドハマりすることもあるでしょうから整理http://www.php.net/manual/ja/language.operators.precedence.php要は、優先順位の話…
ちょっとなんべんも忘れすぎるので、あえて記事にして備忘。 <form enctype="multipart/form-data" action="__URL__" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> </form>
エディタはvimやテキストエディタ、IDEのもを色々使い回してますが、いまだに固まってマセン。 それぞれに良さがあり、欠点もある。けどせめて構文チェックくらいはどれでも使えるようにしておきたいとこです。IDEはもちろん、vimもvimrcに設定すれば問題な…
glob()関数を使うのが便利です。 パターンマッチ使えるので。※file_exists()はファイル名が判ってないと使えないつまり、ディレクトリ内にファイルが存在するかどうかの判定にも使えます。
レアエラーメッセージでました。 T_DNUMBER… 見覚えないなぁと思いつつググるも日本語情報が無いようなので、メモしておきます。 単純に $version = 5.3.3; のように少数点を複数使う場合は、quotationが必要なようです。 こんな数字フォーマットはないので…
PEARパッケージのMailクラスを使い、メール送信する基本形 '127.0.0.1', 'port' => '25', 'auth' => false, 'username' => '', 'password' => '', 'persist' => TRUE, // TRUE:配信毎に接続を切らない。 ); $headers['From'] = $from; $headers['To'] = $to…
SQL文のプリペアドステートメントにある「!(エクスクラメーション)」これは以下参照サイトにあるようにプレースホルダのようだが、 プレースホルダには以下の3種類があります。? --- クォート処理する文字列 ! --- クォート処理しない文字列 & --- バイナ…
シリアライズされた値をunserializeしようとしてエラーになることがある。 unserialize() [function.unserialize]: Error at offset エスケープの問題の例もあるが、 このエラーは単純なeasyミスです。シリアル化したときにエスケープ文字が含まれているかど…
以前も同じようなことをやったのだけれど、 たしかそのときは、substr()やらstr_replace()やら使って処理した気が。 Smartyにはプラグイン関数ありましたよね。 以前からあったのか知りませんでしたが、一発で解決するPHP関数があるそうな。 string mb_strim…
例) ■URL
■郵便番号入力値にチェックをかける場合例えば、地域限定で商品を購入してもらう条件で、購入者の郵便番号によってはじきたいことなどがある。JSON形式の郵便番号データが用意されているので、PHPからそれを使用したいときは、php-jsonモジュールがインスト…
ハマりがち。理由は以下のため。 注意: switch/case が行うのは、 緩やかな比較 であることに注意しましょう。
ceil($a/$b) したときに、変数をintvalしておかないと、Unsupported operand typesというFatal Errorがでる。 PHPって型変換ゆるゆるだったんじゃないの? ceil(intval($a)/intval($b))でFA
いまさらながら、割とよく使う計算関数なのに、覚え切れない二つを整理 floor 関数:床関数とも呼ばれる関数である。数値式 number 以下の最大の整数を戻す。 ceil 関数:天井関数とも呼ばれる。数値式 number 以上の最小の整数を戻す。
PHPマニュアルから若干カスタマイズ
ホスティングしているサーバのPHPバージョンがいつのまにか4から5に。そこで使っているXoopsがけっこう古いプログラムのため、各所で不具合が起こった。まずは、array_merge()から値がとれていない。 PHP5からはarray型のパラメータしか受け取らないようだ…