タグ

ブックマーク / cocoiti.hatenablog.com (9)

  • PHPでEnum型 - cocoiti's diary

    AWSとかAmazonとかSOAPとかRESTなサービスのコードを書いているとPHPでEnum型とかをClassで表現したくなるわけです。 たとえばこんなイメージ <?php class Hoge extends Enum { const MOTE = 'motemote'; } Hoge::keys(); //array('MOTE'); で実装まよってたんですが、AWS SDKの実装が参考になったのでメモ https://github.com/aws/aws-sdk-php/blob/master/src/Aws/Common/Enum.php <?php /** * Copyright 2010-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache Lic

    PHPでEnum型 - cocoiti's diary
    aki77
    aki77 2013/05/13
  •  効率的なWebアプリケーションの作り方 - cocoiti's diary

    効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門 作者: 小川雄大出版社/メーカー: 技術評論社発売日: 2012/05/26メディア: 大型購入: 6人 クリック: 146回この商品を含むブログ (8件) を見る小川さんというか高橋さんというか、@fivestr さんの描いた「効率的なWebアプリケーションの作り方」をいただいた。 まだ3章くらいまでしか、読み終えてないのだけどいまのところ感想 パーフェクトPHPと同じように教科書的に読むといいと思う パーフェクトPHPは、日PHPエンジニアが読むべきでしたが、あのの作者うちの1人が書いたのためか、「効率的なWebアプリケーションの作り方」も非常に近い印象を受けました。 その印象は、アーキテクチャに対して深い洞察を持った人によって書かれているので「PHPはこうなってるから仕方がない」的な内容ではなく、「PH

     効率的なWebアプリケーションの作り方 - cocoiti's diary
    aki77
    aki77 2012/05/30
  • PHP5.4 Advent Calendar 2011 18日目 - cocoiti's diary

    この記事は 17 日目の@rskyさんに続いて、PHP5.4 Advent Calendar 2011 18日目エントリです。彼の朝はいつ開けるのでしょうか。 さて、このAdvent Calenderではそーだいさんの記事に続き2回目になるhtmlspecialcharsネタ。 そもそもそんな一つの関数に 2回も同じネタやる意味あるのかと悩んだのですが、突撃してみたいとおもいます。言いたいことは大体、先の記事に書いてあるので僕からは、もう少し別の角度からいってみたいと思います。 きっかけ そもそもこの記事を書こうとおもったきっかけなんですが、久しぶりに、PHPマニュアルの htmlspecialchars のページ開いたときでした。。 string htmlspecialchars ( string $string [, int $flags = ENT_COMPAT | ENT_HTML

    PHP5.4 Advent Calendar 2011 18日目 - cocoiti's diary
    aki77
    aki77 2011/12/20
    5.4
  • 第50回PHP勉強会参加しました - cocoiti's diary

    取り急ぎ発表資料をPDFであげておきます。 http://cocoiti.com/docs/phpstudy-50-cocoiti.pdf 個人的な思いとしては PHPerがオープンソーシャルにどんどん参加してもらって、ライブラリとかがバンバン公開されて、より質的なサービスに近いコードを書くだけで済むようになったらいいな ウノウに興味もってくれて社員募集に応募してくれる人がいるといいな そして休みが増えるといいな です。 応募は下記からできるみたいです。 http://www.find-job.net/fj/showjob.cgi?id=50212 手短ですが、これくらいで

    第50回PHP勉強会参加しました - cocoiti's diary
  • sfTwigPluginのサンプルコード書いた - cocoiti's diary

    夜21時くらいからはじめてこんな時間までかかってしまったが、sfTwigPluginをこういう風に使いたいなーってサンプルコードを書いてみた。 http://github.com/cocoiti/cocowiki/ 眠いのであとでちゃんと書くが、要約すると、デザインにかかわるテンプレートファイルは通常symfonyのレイアウトファイルを配置するディレクトリに配置する。 module側にはアプリケーションにかかわる部分(主にフォーム関係やエラーメッセージ)を入れる。 ということがやりたかった。 そして、それを実装するためには現在のsfTwigPluginは機能がたりなかったのでsfTwigPluginをforkしてEventListenerを追加した。 http://github.com/cocoiti/sfTwigPlugin/ 下記のようなコードでEventを追加してやれば、継承や体の

    sfTwigPluginのサンプルコード書いた - cocoiti's diary
  • creoleのバグ - cocoiti's diary

    具体的にいうとMySQLのドライバの下記のあたり http://creole.phpdb.org/trac/browser/trunk/classes/creole/drivers/mysql/MySQLConnection.php /** * Roll back (undo) the current transaction. * @throws SQLException * @return void */ protected function rollbackTrans() { if ($this->database) { if (!@mysql_select_db($this->database, $this->dblink)) { throw new SQLException('No database selected', mysql_error($this->dblink)); }

    creoleのバグ - cocoiti's diary
    aki77
    aki77 2009/12/31
    『creoleのバグ』
  • sfTwigPluginを弄ってる - cocoiti's diary

    Twigいいよ!とかいってたけど、それを使うフレームワーク書いてる精神的な余裕がなくなったので、symfony1.4と組み合わせて使えないかしらといいろごにょってみた。 オリジナルはここのなんだけど10月くらいに更新をやめてしまってる。 http://github.com/henrikbjorn/sfTwigPlugin とうぜん絶賛開発中だったTwigがそのままでは動くわけもなくforkしてみた。 http://github.com/cocoiti/sfTwigPlugin とりあえず試してみたいひとは下記な感じで 使い方 インストール $ cd {PROJECT_DIR]/plugins/ $ git clone git://github.com/cocoiti/sfTwigPlugin.git $ cd sfTwigPlugins/ $ git submodule init $ gi

    sfTwigPluginを弄ってる - cocoiti's diary
  • PHPセッションストレージの大本命Flareを試してみました - cocoiti's diary

    PHPのセッションストレージにファイルを使うというのはわりとありですが、2台以上の構成になるとNFSやその他のネットワークのファイルシステムにするか、MySQLなどのDBをセッションストレージとして利用するパターンが一般的でした。 わりと手軽な選択肢の一つにmemcachedをセッションストレージにするという手段があります。 利用の仕方も最近のPHPでは非常に簡単でセッションハンドラーのコードを書くことなく下記の2点の設定を書くだけです。 session.save_handler = memcache session.save_path = "servername:11211" ただ問題があり、簡単なのはいいのですがmemcachedはオンメモリでありストレージに書き込むことがないため、サーバ再起動時にはデータが消えてしまうという問題がありました。(もちろんセッションに依存しない仕組みを用

    PHPセッションストレージの大本命Flareを試してみました - cocoiti's diary
    aki77
    aki77 2009/01/01
    flare, session
  • フォト蔵のRSSからclippへAtomPub経由でインポートしてみる - cocoiti's diary

    clippがこっそりアンドキュメントなAPI公開してて、マニュアル書いたら正式にリリースしたいとか言ってるので、その前に同じ会社特権でいじってみました。(一応、日記にかいていい?って聞いたらOKもらいました。) 今回、Feedの読み込みに何つかおうかなーと悩んでたのですが、ZendFrameworkをいじってみたかったのでZend_Feed周りを使ってみました。 clipp api自体は、AtomPub+clippのネームスペースな実装になってるみたいです。 眠たいのでとりあえずソース全文です。 <?php require_once 'Zend/Feed.php'; require_once 'Zend/Feed/Entry/Atom.php'; require_once 'Zend/Http/Client.php'; try { $feed = Zend_Feed::import("ht

    フォト蔵のRSSからclippへAtomPub経由でインポートしてみる - cocoiti's diary
  • 1