何が良いのかあまり共感を呼び辛いかもしれませんが、テンプレートエンジンを作りました。

Raw Template Engine 0.1

特徴:

  • 新しいテンプレ文法覚えたくない → テンプレがPHP
  • 新しい使い方覚えたくない → Smartyと使い方(メソッド)が同じ
  • chmodしたくない → キャッシュしない(一時ファイルを作らない)
  • 複雑なものは使いたくない → 15行

という後ろ向きなライブラリです。下記、使い方です。

テンプレ:

<html>
<head>
<title><?=$title?></title>
</head>

<body>
<h1><?=$title?><h1>
<hr />
<h2>Methods</2>
<ul>
<?foreach ($methods as $method):?>
    <li><?=$method?></li>
<?endforeach;?>
</ul>
</body>
</html>

PHP:

<?php
include_once("Raw.php");

$raw =& new Raw();
$raw->assign("title", "Raw Template Engine");
$raw->assign("methods", array("assign", "assign_by_ref", "fetch", "display"));
$raw->display("index.php");

ライブラリ:

<?php
//
// Raw Template Engine - the template engine using raw php.
//
// Copyright (C) 2005 Masaki Komagata <komagata@p0t.jp> 
//     All rights reserved.
//     This is free software with ABSOLUTELY NO WARRANTY.
//
// You can redistribute it and/or modify it under the terms of 
// the PHP License, version 3.0.
//
class Raw {
    var $template_dir = "templates/";
    var $template_vars = array();
    function assign($name, $value) { $this->template_vars[$name] = $value; }
    function assign_by_ref($name, &$value) { $this->template_vars[$name] =& $value; }
    function display($template) { echo $this->fetch($template); }
    function fetch($template) {
        extract($this->template_vars);
        ob_start();
        include($this->template_dir.$template);
        $result = ob_get_contents();
        ob_end_clean();
        return $result;
    }
}

表示:

raw.png

賢明なみなさまのこと、一瞥しただけで全てが把握できたことでしょう。
やっつけ仕事や組み込み用途に!

MovableTyep 3.2日本語版にアップデートしました。 管理画面がやたらこなれてます。

MySQLの1テーブル1インデックス問題(勝手に名づけました)が気になってしょうがない! 何故なら「MySQLモデリング」というのが根本的なレベルで存在するとしたら嫌だからです。

yohgaki’s blog – 不自由なWebサイト

「Night Crawler」と呼ばれるシステムでクロールして未登録サイトを見付けて閉鎖させているようです。

大陸ではNight Crawlerが未登録サイトを見つけては閉鎖!((((((;゚Д゚))))))

基本的なことっぽいですが、気になって夜も眠れないので聞いてしまいます。誰か教えてください!!!

オライリーの「実践ハイパフォーマンスMySQL」には

「MySQLでは、1つのクエリを実行する時、1つのテーブルにつき1つのインデックスしか使用できない」

と書いてあります。同じような内容を公式リファレンスマニュアルからは見つけられなかったんですが、実際に試して見る限りそのようです。他のRDBの感覚で言うと1テーブル1インデックスしか使われないのでは現実的な速度が出ない気がします。インデックスが使われないならレコード数に比例して速度が遅くなっていきそうです。これ、みんなどうやってるんでしょうか。

実践ハイパフォーマンスMySQL
  • 実践ハイパフォーマンスMySQL
  • オライリージャパン(2004-10)
  • (著)ジェレミ・D. ザウドニ
  • (著)デレク・J. ベリング
  • (原著)Jeremy D. Zawodny
  • (原著)Derek J. Balling
  • (翻訳)林 秀幸
  • 定価:¥ 3,780
  • 新品価格:¥ 3,780
  • ASIN:4873112095
kunitの日記

次の点を修正した 3.0.2 をリリースしました。

  • 3.0.1の修正によって、Tokenフィルターで二重submitチェックが効かなくなっていたのを修正
  • 親ディレクトリのmaple.iniを継承した際の挙動が3.0.0と3.0.1とで違っていたので、3.0.0と同じようになるように修正

Maple 3.0.2がリリース。 フレームワークという以上に注目すべきオープンソースプロジェクトになってる気がします。kunitさんとはPHP勉強会でちょこっとお話させてもらっただけですが、設計に素晴らしいバランス感覚を持ってらっしゃる!と感じました。 あまりに精力的に活動されてるので交通費は会社の経費で落ちるのかがかなり気懸かりです。

さくらにサーバ移管した瞬間に家のにせマックがアクセス不能。 ディスプレイ持ってないから復活厳しいです。 HDD抜いて、外付けUSBに付けてKNOPPIXから救出か。非常にだるいです。

PEAR :: Package :: PEAR :: 1.4.0

Changelog:

This is a major milestone release for PEAR. In addition to several killer features, every single element of PEAR has a regression test, and so stability is much higher than any previous PEAR release.

New features in a nutshell:
  • full support for channels
  • pre-download dependency validation
  • new package.xml 2.0 format allows tremendous flexibility while maintaining BC
  • support for optional dependency groups and limited support for sub-packaging
  • robust dependency support
  • full dependency validation on uninstall
  • remote install for hosts with only ftp access – no more problems with restricted host installation [through PEAR_RemoteInstaller package]
  • full support for mirroring
  • support for bundling several packages into a single tarball
  • support for static dependencies on a uri-based package
  • support for custom file roles and installation tasks

NOTE: users of PEAR_Frontend_Web/PEAR_Frontend_Gtk must upgrade their installations to the latest version, or PEAR will not upgrade properly

待望のPEAR 1.4がついにリリース。 最大の変更点はChannelをサポートしたことでしょう。ChannleとはPEAR本家以外にもリポジトリを勝手に立てて、そこからpearを使ってインストールしたりできる機能です。 全体的にPEAR 1.4を機にpearコマンドによるパッケージ管理に本腰を入れてるっぽいです。
おれもPEARは手動アップロード派(ソフト毎にPEARを持つ派)ですが、ちょっと試してみようかな。PEAR 1.4リリース後、即座にSeasar-php MLではS2Container.PHP5、S2Dao.PHP5、MapleをChannelサーバで配信しようという案が。 動きはやっ。

ドラクエ8終了~~~!いまさら終了ーーー!!! PS2とドラクエをセットで借りてゲーミングしてた(重複)んですがやっと終了。 面白かったですが、このような悪魔の機械、早く返さねば・・・。

ドラゴンクエストVIII 空と海と大地と呪われし姫君

さくらのレンタルサーバに移行が終わりました。 本当はデザイン変えたりしたかったんですが、面倒だったのでそのうちやります!