2014-03-31

PHPを書くと手が震えてくる

俺は請負で業務アプリ作成する残念なお仕事をするプログラマーだ。

最近JavaとかJavaScriptを書いてたりする。

先日PHPコードを久々に書いたのだがあまりのすごさに手が震えてきた

$hoge = new Hoge();
$hoge.execute();

これが動かない。なぜだ。

メソッドの呼び出しが「-&gt」と気づくのに数分の時間を要した。


"hello world".split(" ");

文字列を分割したかった。

勿論これは動かない。

文字列オブジェクトではないからだ。

PHPドキュメントを参照する。

まあ普通に考えて関数名はsplitだろう。

現れる警告文。

この関数PHP 5.3.0 で 非推奨となりました。 この機能を使用しないことを強く推奨します。

ほう。なにを使えと。

。。見当たらない。。。

下のほうの注意に書いてあるなぜここなのか。

なるほど正規表現がいらないなら「explode」を使えとな。

毎回悩む、なぜ爆発なのかと。

英語にはそういう比喩でもあるのか?

あれ?そういえば「explode」ってマルチバイト対応してなかったな。

なら「mb_split」か?

「split」が非推奨なんだから非推奨だろうがヒントはあるだろうし、一応見ておくか。

非推奨じゃない!

非推奨じゃない!

mb_splitは非推奨じゃないんだ!

俺は考えるのをやめた

だんだん記憶が蘇ってくる

「preg_split」にオプションで「UTF8」をつけるのが正解だったような。

俺は考えるのをやめて爆発の呪文を唱えた。


さてこのプログラムには他のクラス必要なんだが

Symfony2DIサポートしているからInjectするようにしようか。

たぶんAutowiredくらいあるだろう。

class Service {
    /**
     * @var \PDO
     */
    protected $pdo;

    /**
     * @param \PDO $pdo
     * @Inject
     */
    public function setPDO(\PDO $pdo) {
        $this->pdo = $pdo;
    }
}

・・・・?

ドキュメントアノテーションを書く斬新さ!

俺は震える手を押さえながらそっとパソコンの電源を切った。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん