| チュウトリアル | |
| |TOP| |1||2||3||4||5||6||インスト1||インスト2||インスト3||Linux| | |
PEARをつかってみよう 注:ここにある情報は古くなっているおそれがあります PEARってなんだ?PEARとは、PerlのCPANのようなライブラリ群です。よく使われるクラスを集めたものです。 c:/php/pearの中に入ってます。(Linuxならばsrc/php-4.0.*/pear/) インストール方法はWindowsならばphp.iniを次のように書き換えます。 Linuxの場合は 尚、この文章は管理人の推測で書かれています。間違いがあるかも 実行時間を測ってみようベンチマーク取ってみたいと思ったことはありますか?そんな時には「Benchmark/Timer」クラスです。
<?php
require_once "Benchmark/Timer.php"; //クラスのロード
$timer = new Benchmark_Timer; //インスタンスの生成
$timer->start(); //ベンチスタート
for($i=0;$i<30000;$i++){} //計測したいPHP文
$timer->setMarker('Marker 1'); //マーキング(ラップ)
while($j<30000){$j++;} //計測したいPHP文2
$timer->stop(); //ベンチストップ
$profile = $timer->getProfiling(); //結果を連想配列に格納
echo "Total " . $profile[2][total]; //Stopまでの合計秒
//echo "<pre>".print_r($profile)."</pre>";
echo $profile[1][name] ."=". $profile[1][diff]."<br>";//Marker1まで
?>
途中経過を測るときはマーキングを置けます。Timer::getProfilingで結果が連想配列として取得できます。 $profiling[x]['name'] = マーカー名(0なら'Start') StartとStopだけならば$profiling[1][total]が合計実行時間となります。
ベンチマークを取るクラスはもう一つあります。関数の実行時間を測る「Benchmark/Iterate」クラスです。 <?php
require_once "Benchmark/Iterate.php";
$bench = new Benchmark_Iterate;
function my_print($string)
{
print $string."<br>";
}
$bench->run(100, 'my_print', 'test');
$result = $bench->get();
echo $result[mean];
?>
このサンプルでは「my_print」という関数にtestという文字を100回繰り返し送ります。 ネット上の画像サイズを得る通常、画像ファイルのサイズやタイプを知るには getimagesize() 関数ですが、 ネット上にあるリモートの画像サイズを得るのが「Image/Remote」クラスです
<?php
require_once "Image/Remote.php";
$i = new Image_Remote("http://php.s3.to/g/100.gif");//URL指定
$data = $i->getImageSize();
echo "width=$data[0] height=$data[1] type=$data[2] src=$data[3]";
?>
Image::getImageSizeで返ってくる配列は、通常のgetImageSize()関数と同じです。 追記:PHP4.0.5からは<?php $size = GetImageSize ("http://www.php.net/gifs/logo.gif"); ?>とURLが使えるようです gzip圧縮して転送量減らして高速表示CPUに余裕がある場合、HTMLページを圧縮して転送することで高速にブラウジングが出来ます。 データ量が多い時や従量制課金の鯖などに有効です。尚インストールで--with-zlibがないと使えません <?php require_once "HTTP/Compress.php"; $http = new HTTP_Compress; $http->start(); ?> <html> <body> <p>あっしゅくー </html> </body> <?php $http->output(); ?> 楽々フォーム作成いちいち<input type=text name=?? と書かなくてもフォームのHTMLを生成してくれるのがHTML/Form.phpです。 しかもテーブルまで作ってくれます。うまく使いこなせば楽かも・・
<?php
//現在はHTML_Form.phpになってます
require_once "HTML/Form.php";
// action先,method(空ならGET),name,target
$f = new HTML_Form("post.php", "POST");
// テキストボックス name=???,タイトル,デフォ値,[幅(空なら20)]
$f->addText("name", "名前", "");
$f->addText("email", "E-Mail", "", 30);
// パスワードテキスト name=???,タイトル,デフォ値,[幅]
$f->addPassword("pwd", "パス", "", 8);
// チェックボックス name=???,タイトル,デフォ値
$f->addCheckbox("cookie", "Cookie", 1);
// テキストエリア name=???,タイトル,デフォ値,[幅,高さ]
$f->addTextarea("com", "コメント", "", 40, 5);
// セレクトボックス name=???,タイトル,エントリー,
2通りの方法が使えるようですが、こちらが簡単な方です PHP4.3.0からはPEARは最小限インストールしかされません
■PEAR関連サイト ・PEARリンク(チュートリアル)
<<Prev Next>>
LastModified July 06 2006 15:35:07
|
| |HOME||チュウトリアル||使用上の注意||スクリプト||無料鯖情報||BBS||リンク| Copyright(C) 1999-2001 ToR all rights reserved. |