ぷぎがぽぎ このページをアンテナに追加 RSSフィード

2010-10-29

[]Pharは便利だけど `--enalbe-zend-multibyte`が有効だと文字化けしてしまう

タイトルのままです。以下にもう少し詳しく。


Pharは複数のファイルを1つのアーカイブにまとめることができ、読み込みも

<?php
include 'sample.phar';

のように全体を読み込んだり

<?php
include 'phar://sample.phar/config.xml';

のように個別にアーカイブの一部を使うこともできる便利な機能です。

PHP5.3からは標準で組み込まれるようになり別途インストールする必要がなくなりさらに身近な存在になりました。

詳しくは公式マニュアルをどうぞ。

PHP: Phar アーカイブの使用法: 導入 - Manual


というわけで、色々使えそうだということで色々試そうとしたのですがうまく動きません。

具体的には以下のようなpharを作るスクリプトでsample.pharを作成します。

create.php

<?php
@unlink('sample.phar');
try {
    $phar = new Phar(dirname(__FILE__) . '/sample.phar');
    $phar->setStub('<?php echo "test" .PHP_EOL; __HALT_COMPILER();');
} catch (Exception $e) {
    echo 'Cannot open file: ', $e;
}

これを以下のように呼び出すと...

$ php create.php
$ php sample.phar
?

本来は"test"という文字が表示されるはずが「?」になっちゃってます。

そして、macportsで入れたPHP5.3.3だと動き、自前でコンパイルしたPHP5.3.3だと動かないと。。。

ということはオプションに何かあるはずだと色々確認した結果、`--enalbe-zend-multibyte`を有効にしてPharアーカイブを使うと文字化けすることを確認。

ソースをSJISで書く必要がなければわざわざこのオプションを付けてコンパイルしないほうがいいということですね。余計なオプションは付けない。これ基本と。。

ただ、動かないのはおかしいような気がするのでbugレポートを書いてみました。

というわけで、Pharを使ってハマる方がでてきそうな気がするのでメモを残しておきます。

2010-10-14

[][]Doctrine2を使いたい

と、思っている方も多いんではないでしょうか。

というわけで、ここにDoctrine2に関連するリンク集を残していきたいと思います。

気づいたら追加していく予定なので、お勧めのページやサイトがあればコメントか何かでご指摘ください。

あ、まだ安定板でてませんので、取り扱いにはお気をつけください。

公式サイト

ドキュメント
ダウンロード

 とりあえずビール的な日本語記事

見ておきたい記事/サイト

他のアプリケーションと連携


見ておきたい動画/スライド

  • スライド

2010-10-13

[][]jpSimpleMailPluginをアップデート

以前に更新したつもりがtagだけ打ってtrunkを更新せずに内容をポイしてしまっていたことに昨日気づいたjpSimpleMailPluginですが、

ちょっと時間ができたのでちゃんとtrunkを更新しました。

http://openpear.org/package/jpSimpleMailPlugin

あ、jpSimpleMailPluginとはsymfonyiso-2022-jp(JISメール)を送信するための簡単プラグインです。詳しい説明は以下を参照してください。

jpSimpleMailPluginとは?

PHPMailer, Swift Mailer, Qdmailお好きなライブラリが利用可能です。

symfony1.4だと標準がSwift Mailerなので

jpSimpleMail::create('SwiftMailer4');

を指定すればすぐに使えます。

また、前回のバージョンまでは(株)くじらシステムさんのライブラリを別途用意する必要がありましたが、今回のバージョンから

SwiftMailer4対応は(株)くじらシステムさんのkzlJpSwiftMailerPluginのライブラリを同梱して利用させていただいています。本当にありがとうございます。

次はsfSimplePagePluginのenhancement要望メールが来ているのでそれにも対応しないと。。。

2010-10-06

[]PHPMatsuriに感謝

PHPMatsuriが先週末に東京で開催されました。

ブログを書くまでがPHPMatsuriということで、ついついtwitterでつぶやいて満足しがちな最近なのできちんと自分の総括をしておきたいと思います。

ほんとうに沢山のことに気づかされた2日間でした。

海外のリードデベロッパーと一緒にワークショップ

今回CakePHP, Lithium Symfony2のワークショップが開催されたのですが、講師がリードデベロッパー達という超豪華なワークショップでした。

私は他のセッションを見ていたりしたのもありSymfony2のワークショップのみ参加しましたがKris Wallsmithさんが直接twitterっぽいアプリを即興で実際にコーディングしながら手順について説明してくれるというなんとも豪華な内容でした!

途中エラー画面になったりしても、どうやって対応していっているかなどの様子を見ることができたり、Doctrine2の大量のメソッドエディタ(Textmate)でフィルタリングして探してコーディングしていく様子など釘漬けで見てました。あと、ネームスペースなどのタイピングがとても速くてビビりました。

また、基本英語で行われたワークショップでしたが、途中から@mackstarさんが通訳を行ってくれて凄い助かりました。でも、参加者皆がKrisさんの生の声を一生懸命聞こうとしている姿や@hidenorigotoさんが英語で質問したりと予定を1時間もオーバーするとても充実したワークショップでした。

英語の必然性と一歩踏み出す勇気

@hyoshiokさんも話されていましたが今回参加することで肌身を持って感じました。

私自身は英語なんてほとんどできません。

去年symfonyのリードデベロッパーであるFabienさんが来日されたときもお酒の力を借りてなんとか話出来る程度でした。

なので、今回参加すると決めてからは通勤時間を利用して勉強したり英会話サークルに顔を出したりと自分を追い込んでみました。

結果としては全くといってよいほど上達することもなかったのですが、コアデベロッパーの皆さんとお話することができました。

今回はLithiumを触っていたわけですが、どうやって実装していいかわからなかったところを直接本人に聞く事ができたりもしました。

海外のカンファレンスにも参加していくつもりです。(なかなか時間とれないけれど)

「日本から下手な英語で情報発信してるあの人ね」と言われるようになりたい。

Sukonv?

今回のハッカソンで@hidenorigotoさんと@cakephperさんたちと企画していたWebサービスであるsukonvをLithium + MongoDBで黙々と作ってました。

完成まではまだほど遠い感じなのですが、実際に動く画面をTLで紹介できたのにはほっとしました。

ちなみに、sukonvとは「セッションを使うには?」のようなお題に対して各PHPフレームワークでの実装方法やコードを投稿し皆で共有できるサービスです。

実際にドメインまで取ってユニットホスティングでテストを行っています。結構やる気出してます。

まだ公開できるレベルになっていないのですが、おかげさまでユニットホスティング賞の次点をいただきました!ありがとうございました!

色々なことを経験し、刺激を受けました。

そして、自分がこのイベントで肌身を持って感じたことをきちんと今後の活動に活かしていくことが大事だなと。

最後に、こんなにすばらしいイベントを開催してくださったスタッフの皆様には本当に心から感謝します。ありがとうございました!!

2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2014 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2015 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |