タグ別アーカイブ: php

サーバをAmazon EC2に移行しました

何となくグズグズして先延ばしにしていたのですが、一念発起してサーバをAmazon EC2に移行しました。下記のように、大幅なグレードアップです。スッキリしました。

  • ハードウェア:ドスパラのミニPC → Amazon EC2
  • OS:Windows XP → Amazon Linux
  • Webサーバ:Apache 2.2 → Apache 2.4 + mod_pagespeed + mod_security
  • PHP:PHP5.2 + eAccelerator → PHP5.4 + APC
  • DB:MySQL 5.0 → MySQL 5.5
  • DokuWiki:最新化、テーマは新テーマ”dokuwiki”

ドスパラのミニPCはカレコレ6年近くもほぼ連続稼動していたわけで、よくもまあ壊れなかったものだと思います。(内蔵ファンは動かなくなったので外付けファンを付けて冷やしてましたが。)

その他の感想としては、

  • Amazon LinuxはデフォルトのyumでApache2.4とかPHP5.4とか入れられるのが良い。ダウンロードが速いし。
  • mod_pagespeedは面白いけど、deflateとexpiresは自分できちんと設定したほうが良い。(対象が狭いので。)
  • mod_pagespeedのGoogle Analytics自動挿入は便利。
  • mod_securityのデフォルトのルールはDokuWikiと相性悪い。(デフォルトで使うものではないのだろうけど。)
  • PHP5.2から5.4への移行でエラーが出まくるとかと思ったけど、意外に大丈夫だった。
  • DokuWikiの新テーマは見やすくて使いやすくて良い。

 

JAXのバグを修正しました

PHPで手軽に配列・JSON・XMLを相互変換するライブラリJAX.phpにバグがあるというメールを頂いたので修正しました。修正後のバージョンは0.1.1です。

バグの内容は、XMLに変換するデータに「&」等のXMLで許可されない文字を含んでいる場合にエラーになるというものです。

こういうご連絡をもらえるというのはありがたいですね。 :-)

PHPのスニペット集的ライブラリと、予約語取得スクリプトを公開しました

久しぶりの新作公開です。

痒い所に手が届く、PHPの文字列系関数を中心としたスニペット集的ライブラリのTe.phpと、PHPの予約語をまとめて取得するスクリプトを公開しました。

2012年も終わりですね。去年(2011年)はスマホ元年でしたが、来年(2013年)はタブレット元年です。Webの作り方も変わってくるでしょうね。何はともあれ、良いお年を!

PHPでJSONとArrayとXMLを一発で相互変換するツールを公開した

JAX.phpです。XMLの変換のとこがよく分からないかもしれませんが、試しにXMLを書いて配列に変換させてみればわかるかと思います。

json_encode()/json_decode()に関しては標準関数でもう十分に便利なのですが、まあ定数とか忘れずにということで。

CodeBook.php バージョンアップ(0.2.1)暗号鍵長のチェックを追加

CodeBook.phpをバージョンアップしました。タイトルの通りです。

例えばAESなら、鍵長が128、192、256ビット以外の場合は例外を投げます。

Blowfish等、鍵長が可変長の場合はノーチェックです。

PHPによる暗号化ツールCodeBook.phpをバージョンアップ(0.2.0)

CodeBook.phpをバージョンアップしました。0.2.0です。(CodeBook.phpは、PHPの暗号用関数群を使いやすくするためラッピングしたものです。)

主な変更点は、パディング方法をコンストラクタで指定するようにしたことです。デフォルトはPKCS#5形式のパディングにしました。
PHPのmcryptは暗黙的にNull文字でパディングするのですが、この暗黙的なところがかえって分かりづらいと思ったので、分かりやすくするために常にパディングするようにしました。

まあ地味なツールなので需要は少なそうですが…

 

TodofukenSelect.phpアップデート(0.2.0)

TodofukenSelect.phpをアップデートしました。バージョン0.2.0です。
GAddress Finder
のサンプル用に使おうとして、気になるとこを直したのです。
このTodofukenSelect.phpって、あまり使わないけどたまに便利だったりします。お手軽で。

主な変更点は、

  • 数字2桁のコードを廃止して、formで送信される値を都道府県名にした
  • TodofukenSelect::isTodofuken()を追加し、都道府県名として正しいかチェックできるようにした

数字2桁のコードは、使っていて不要だと思ったので削除しました。
DBに登録するにしても、下手にコード化するより都道府県名をそのまま登録したほうが視認性が高いと思うのです。
将来的な都道府県体系の変更時のデータのコンバートまで考慮したとしても、コードより都道府県名が使いづらいというケースはないでしょう。

 

PHPのDateTimeをちょっと便利に拡張したSmart Dateを公開しました

こちらです。

PHPのDateTimeオブジェクトをもう少し便利に改造した – Smart Date [ゼロと無限の間に]

自分が普段使うような機能を盛り込みました。使っていて気づいた点があれば改良・機能追加していくかもしれません。(そんなに使わないかも?)