新しいプロジェクトの追加はプロジェクト情報作成から行えます

誰でもコミットできます PHP_PowerToys

Subversion Repository: http://openpear.org/repository/PHP_PowerToys / Latest Release: 0.2.6

密かに暖めてきたネタですが

なんか、Openpear_Utilに先を越された感じに(^^;

ですが、こちらのコンセプトは

汎用ではなく、あったらいいなというような

PHPのかゆい部分に手が届くライブラリです。


因みに命名ですが

Microsoft社が開発した公式のWindowsカスタマイズツール

Microsoft PowerToys for Windows

に由来しています


各メソッドについての説明


getInstance

これは、クラスファクトリーそのままです。

ファイル名とクラス名が一緒であれば

そのままインスタンスとして取得してくる事が可能です。

getPearI

PEARライブラリ向けのクラスファクトリーです。

使い方としては、いつも皆様がpearコマンドを使って

インストールする風な感じでOKです(例:Net_POP3)

getPear

同じくPEARライブラリ向けのクラスファクトリーです。

ですが、これは上記と違いファイル名を指定して

インスタンスを持ってくるメソッドです。

arrayKeyReplace

連想配列のキー名を、順序を保ったまま

置き換えるためのメソッドです。

因みに、違うキーで同じデータを入れても

新たに配列が生成されてしまうだけです。

仕事で必要になったため、PHP関数リファレンスを

覗いてもこのようなメソッドがなかったため

作成いたしました。

is_file_ex

Ethnaに影響を受けました。

通常のis_fileではInclude_pathを

見に行かないので、作成しました(コピペではありません)

因みにMail_Mailerクラスでも実装しています。

save_var_dump

var_dumpした結果はprint_rと違い

通常はファイルとして保存する事が出来ません。

それを保存出来るように拡張したメソッドです。

checkBom

UTF-8なデータに相性の悪いBOMがないかチェックします。

removeBom

UTF-8からBOMを削除して返します。

addBom by 0.2.0

通常ならBOM排除なのですが、これは逆に

BOMを付加します。

過去のエディタを使っている人向けですが

需要はないでしょう。

iopen

GDでそのまま画像を開こうとすると

識別してからimagecreatefrom(jpeg|gif|png)

という形で選ばなければなりません。

これは非常に厄介な問題なので

指定された画像の形式を自動識別して

リソース情報を返すメソッドです

命名はfopenという関数があるので、それに習いました。

但し、このメソッドはやや不安定なところがあるので注意が必要です(mspaintのjpegはなんか癖がある事が判明?

0.2.0

BMPファイルに対応させました

ImageCreateFromBMP by 0.2.0

BMPファイルを開きGDリソースとして返します。

出典

http://jp.php.net/manual/ja/function.imagecreate.php#53879

imagebmp by 0.2.0

BMPファイルを保存します。

出典

http://php.benscom.com/manual/ja/ref.image.php

print_r_ex

変数の中身を展開するprint_r関数ですが

ブラウザ上で見ると非常に見辛いです。

これは、改行コードで単にブラウザに沿ってないだけの

問題ですが、それをブラウザからでも確認しやすくします。

objectClone

PHP5からは「&」を用いた参照代入をしなくても

シャローコピーになるようになりました。

もしディープコピーがしたい場合にはcloneを用いる

必要がありますが、深い階層の場合はcloneでは

事足りない事があるそうです、このメソッドでは

その部分を補います。

file_get_contents_ex

場合によっては、危険なメソッドになるかもしれませんが

php.iniの設定で「allow_url_fopen」が

offにされていても、外部のコンテンツを取りにいけます。

因みに「allow_url_fopen」はini_setで値を変更する事は出来ません。

extensionExist by 0.2.0

PHP拡張ファイルの有無を確認します。

例えばGDがない状況でimagecreatefromjpeg

をするとエラーの原因になってしまいますので

これを挟むと幸せになるかもしれません。

imlibResizer by 0.2.0

GD imagick以上に高速画像編集が可能だという

imlib2の拡張を使ったリサイズメソッドです。

但し、私の環境ではコンパイル出来なかったり

セグメントフォルトが起きたりして確認

出来なかったので、コード自体は

ドキュメントによる勘です。

in_array_ex by 0.2.0

PHPには配列の中に該当文字があるか調べる

in_array関数がありますが、このメソッドは

それを正規表現に対応させたものです。

iniParser by 0.2.0

Windowsでよく使われる設定ファイルである

iniファイルをパースして配列で返すメソッドです。

hexFromFile by 0.2.5

ファイルの中身を16進数で返すメソッドです。

binFromFile by 0.2.5

ファイルの中身を2進数で返すメソッドです。

garbageCollection by 0.2.5

メモリの開放を行うメソッドです。

信憑性確認してませんがw

compressMobileHtml by 0.2.5

HTMLを圧縮する(と言っても文字的に)メソッドです。

携帯電話向けの機能なので、このような

メソッド名となっています。

携帯向けHTMLを作成する際は保守目的でインデント

改行とかを気にしなくてはなりませんが

実行時には、携帯からソースを見るとか

それがないから、おかしくとかがありませんし

また、携帯ではdeflateが効かないので

トラフィックの向上にも繋がると思います。

使い方はsample.phpにも書いていますが

インスタンス生成の際に

$pt = new PHP_Powertoys('compress');

と記述して下さい。


以上0.2.5で改良、追加した機能の一覧を含めました。

使い方はサンプルコードをご覧下さい。

How to Install

sudo pear install openpear/PHP_PowerToys

このプロジェクトを応援する開発者!

gravatar anatoo gravatar KOYAMA Tetsuji gravatar MugeSo gravatar murahashi kenichi

maintainer

gravatar FreeBSE (lead)

手っ取り早くホームページ
http://panasocli.cc