Posts tagged PHP
3月に読んだ本
03月は合計20冊。忙しかったが結構いいペースで読めました。
野球好きな方には「プロ野球2.0 (扶桑社新書 24) 」はオススメです。野球というビジネスの経営に関して知ることができます。
(続きを読む…)
サーバ移転 XREA からさくらへ
0昨日、このブログを設置しているサーバを XREA からさくらへ移転しました。移転ついでに WordPress のバージョンも 2.5 にアップ & テンプレート変更してみました。WordPress 2.5 や移転の話はまたそのうち書きます。
XREA は安くてよかったのですがサーバが重すぎです。毎日夕方になるとブログを開くのが重くなり、しまいには PHP ファイルがダウンロードされるというありえない状態に。また、先月2回ほどメール送受信が2日ほど不可能になり、移転を決めました。
(続きを読む…)
ルパンタイトル風待受けジェネレータ
1swftools の勉強がてら、ルパンタイトルの待受けFlash ジェネレータを作りました。
FlashLite で文字を自由に入力させて何か作ろうとするとフォントとフォントサイズで自由度が低くなるんですよね。
そこで、一文字づつ画像を PHP で作成して、swftools の jpeg2swf を使用して Flash に変換するようにしました。
(続きを読む…)
PHP 開発に使う10個のツール
2DaveDevelopment ? Archive ? 10 tools for Modern PHP Development で「PHP の開発に使われている10個のツール」が紹介されていました。 (続きを読む…)
WordPress テーマを作成する(2)
1前回は style.css と index.php だけを作成して最低限のブログを表示させました。なぜこれだけのファイルで表示ができるかというと選択しているテーマに必要なファイルがない場合は wp-content/thmems/default 内のファイルを使用するためです。
今回はヘッダファイルとフッタファイルを作成します。
ヘッダファイル
テーマディレクトリに header.php を作成し下記のような内容にしました。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>> <head profile="http://gmpg.org/xfn/11"> <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /> <title><?php bloginfo('name'); ?> <?php wp_title(); ?></title> <meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats --> <link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" /> <link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" /> <link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" /> <?php wp_head(); ?> </head> <body> <div id="page"> <div id="header"> <h1><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1> <div class="description"><?php bloginfo('description'); ?></div> </div>
ゼロから書くのは大変なので default/header.php をコピーして必要最低限のみ残してみました。
フッタファイルの作成
ヘッダ同様に footer.php ファイルを作成し、下記のようにしました。
<div id="footer"> <?php bloginfo('name'); ?> Powered by <a href="http://wordpress.org/">WordPress</a><br /> <a href="<?php bloginfo('rss2_url'); ?>">Entries (RSS)</a> and <a href="<?php bloginfo('comments_rss2_url'); ?>">Comments (RSS)</a>. </div> </div> <?php wp_footer(); ?> </body> </html>
ヘッダとフッタのみのブログができました
CakePHP1.2 バリデーションで共通ルールを作成するときに便利な userDefined
0CakePHP1.2 バリデーションのルールを調べているときに気になっていた Validation クラスにある userDefined に関して調べてみました。
cake/libs/validation.php
function userDefined($check, $object, $method, $args = null) { return call_user_func_array(array(&$object, $method), array($check, $args)); }
と定義されています。
call_user_func_array は PHP の関数で、関数やクラスのメソッドをコールすることができます。
つまり独自バリデーションがこれを使用して実装できるということです。
使用方法はモデルに以下のようにバリデーションを定義します。
var $validate = array( 'field' => array('rule' => array('userDefined', 'Model', 'method_name')), ); function method_name ($data) { /* バリデーションのチェック エラーなら false 、エラーなしなら true を返す */ }
ただこれだと下記のように書けるのであまりありがたみがない。
var $validate = array( 'field' => array('rule' => array('method_name'), );
何に使えばいいのかと考えたところ、クラス名、メソッド名が指定できるのでシステムで共通のバリデーションを設定するときに使えるのではと思いました。多分これが一番うれしいところではないかと思います。
※ただ、app_model.php に共通にしたいバリデーションチェック用のメソッド名を書けばそれでいけるような気もする。