PHP

ctags で PHP のクラス定数も仲間に入れてあげる方法

PHP

PHP ファイルに ctags しても const で定義したクラス定数がタグに入らなくて困ってたんです。

Zend_Mail で Gmail の SMTP サーバを使ってメールを送信する方法

PHP

基本は Zend Framework のマニュアル通り。http://framework.zend.com/manual/ja/zend.mail.smtp-authentication.html 'login', 'username' => 'yourname@gmail.com', 'password' => 'yourpassword', 'ssl' => 'tls', 'port' => 587, ); $tr = new Zend_Mai…

MacのPHP設定

sudo cp /opt/local/etc/php.ini-recommended /opt/local/etc/php.ini sudo vim /opt/local/etc/php.inierror_reporting = E_ALL | E_STRICT

recursiveIteratorIteratorでinner iteratorのメソッドが呼べるのはなぜ?

以前のエントリ id:balibali:20080518:1211129576 でオーバーライドがどうとか言っていた件ですが、いまだよくわからず、もうちょっとシンプルなサンプルコードを書いてみました。 test(); で実行結果が、 $ php -f s…

RecursiveFilterIterator版PINDでSubPathname表示

id:balibali:20080515:1210876616 のつづき。結果が相対パスじゃなくなっていたので修正。なんか場当たり対応なのでもっと上手く書ける気がする。 @@ -65,18 +65,21 @@ } if ($result) { - echo $color->convert("%G{$path}%n\n{$result}\n"); + $subPath = …

__autoload()

なんで先週こんなコード書いていたのだろう。。。

RecursiveFilterIterator版PIND

id:balibali:20080511:1210523675 の続き。RecursiveFilterIteratorを使ってみました。いろいろ適当すぎですが、とりあえず晒してみまふ。

symfony1.1入れてみた

1.1もbetaとか指定すれば PEAR インストールで入るだろうと思ったら残念ながら入らなかったので、svn co で入れてみました。 $ mkdir ~/symfony $ cd ~/symfony $ svn co http://svn.symfony-project.com/branches/1.1symfony コマンドにシンボリックリンク…

ArrayObjectってforeachでも動くのね

id:balibali:20080507:1210179992 で使ってみた ArrayObject、これ foreach で書いても動くんですね。while で書かなきゃいけないかと勘違いしてた。 _name = $name; $this->_parties = new ArrayObject(); } public function addParty($part…

PINDちょっとだけ最適化

id:co3kたん作のPINDに手を入れてみました。コミット権限もらうか。いやそこまではいいや。どうせ ack 使うし。PINDについては→ http://blog.co3k.org/archives/37RecursiveIteratorIterator のコンストラクタの第2引数は RecursiveIteratorIterator::LEAVES…

Reading:オブ脳本(7)Template Methodパターン(PHP5編)

オブ脳本、超手抜きパターン取得法の章に戻って、Template Methodパタンの例をPHP5で書いてみました。 実行結果 $ php -f Shacho.php -- Tanto 小川 100 担当小川起立します。給料は100円です。 $ php -f Shacho.php -- Shunin 中川 100 主任中川起立します…

Reading:オブ脳本(4)Compositeパターン(PHP5,ArrayIterator編)

先ほどのサンプルコードをArrayIterator使って書き換えてみました。 Bumon.php _name = $name; $this->_parties = new ArrayObject(); } public function addParty($party) { $this->_parties->append($party); } public func…

Reading:オブ脳本(3)Compositeパターン(PHP5編)

引き続き、PHPでサンプル書いてみまする。今回はCompositeパターンの例です。とりあえずPHP5だけ。PHP5いいわあ(4と比較してだけど…) 実行結果 $ php -f Manager.php 製造事業部 ------------------- システム部 ------------------- 吉田さん 平井さん 営…

Reading:オブ脳本(2)社長命令・起立!(PHP5編)

d:id:balibali:20080506:1210044632 に引き続き、オブ脳本の演習「社長命令・起立!」をPHP5でも書いてみました。変更した点は、 アクセス権をあちこちに追加 staticキーワードの追加 Shainクラスのabstract化 __autoloadを使ってrequire_once外し このあた…

Reading:オブ脳本(1)社長命令・起立!(PHP4編)

3年前くらいに買ったオブ脳本を引っ張り出してきて読んでいます。オブジェクト脳のつくり方―Java・UML・EJBをマスターするための究極の基礎講座作者: 牛尾剛,長瀬嘉秀出版社/メーカー: 翔泳社発売日: 2003/07/02メディア: 単行本購入: 12人 クリック: 318回…

Auth_Container_Multipleおもしろそう

PEARのAuth_Container_Multipleがおもしろそう!メモメモ。 複数のコンテナを利用可能 コンテナのどれかで認証成功→OK、コンテナのすべてで認証失敗→NG 設定例(※ソースコード内のコメントから引用) 'DB', 'options' => array('dsn' => 'mysql://user:pass…