タグ

ブックマーク / blog.asial.co.jp (5)

  • Standard PHP Libraryの例外クラスを活用しよう!

    はじめに 今回はPHPでの例外の扱い方、特にSPL (Standard PHP Library)の例外クラスの使い方を見ていきます。例外を投げる際には、エラー種別により例外クラスを切り替え、受け取る側での処理も分けます。Javaなどではごく当たり前です。しかし、PHPプログラマの中には、そこまで切り分けない人も意外といます。Exceptionクラスだらけのコードもしばしば見かけます。 SPLの例外クラス アプリケーションによっては、例外クラスを独自に作成することもあります。とはいえ、いきなり例外クラスを複数定義して使いまわすことは、若干ハードルが高いかもしれません。まずは、SPL (Standard PHP Library)の例外クラスを使ってみましょう。SPLでは以下の例外クラスを提供しています。 SPL 例外クラスツリー LogicException (extends Exceptio

    ghostbass
    ghostbass 2013/01/24
    最近は個別のcatchをしてない。DBは例外で接続を閉じるかロールバックの機会を得るためだけにcatchしてる。/ロジックを例外で実装するな、って誰か言ってなかった?
  • PHP5.5 Alpha1リリース! 新機能を俯瞰する

    こんにちは、久保田です。 PHP5.5 Alpha1が11/15日付けでリリースされました。この記事では以下のような新機能や変更を紹介します。 ・ジェネレータとコルーチンの追加 ・finallyキーワードの追加 ・配列や文字列のデリファレンスのサポート ・foreachの中でのlist表現 ・PCRE正規表現での/e修飾子が非推奨化 ・NEWS翻訳 ジェネレータとコルーチンの追加 PHP5.5での一番大きな新機能は、ジェネレータとコルーチンの追加です。文法にyield構文が追加されました。 まずは、ジェネレータを説明します。例えば以下の様なコードが動きます。 <?php function hoge() { yield "hoge"; yield "fuga"; yield "piyo"; } foreach (hoge() as $str) { var_dump($str); }

    ghostbass
    ghostbass 2012/11/21
    「try構文のとともに利用するfinallyキーワードがサポートされるようになりました。」やっときたー
  • 「仕事に必須!!マスト!!これが無いと仕事にならない!!」というわけではないが、何気によく使っているツール3選@Mac

    仕事に必須!!マスト!!これが無いと仕事にならない!!」というわけではないが、何気によく使っているツール3選@Mac

    「仕事に必須!!マスト!!これが無いと仕事にならない!!」というわけではないが、何気によく使っているツール3選@Mac
    ghostbass
    ghostbass 2009/10/14
    あとで
  • symfonyのルーティングでメモリが肥大化する問題と対処法

    こんにちは。小川です。 先日、symfony(v1.2.7)で番(prod)環境に設定した場合に開発(dev)環境の数倍のメモリが消費されるという状況に陥ってしまいました。原因を追及した結果、ルーティングの設定に問題があることが発覚したので、今日はそのことを書こうと思います。 原因先には述べてあるとおり、ルーティングの設定に問題がありました。symfony1.2ではルーティングのキャッシュということを行っており、そのキャッシュが肥大化してメモリを大量に消費する原因となっていました。 対策としてルーティングのキャッシュを無効にしてキャッシュファイルの読み書きを行わないように設定ファイルを修正したところ、上記の問題は無事に解決しました。 <strong>追記@2009/09/28</strong> symfony1.2.9以降では初期状態でキャッシュが無効になるように設定されています。sym

    symfonyのルーティングでメモリが肥大化する問題と対処法
  • Flex4とsymfonyを連携させて遊んでみた。

    最近仕事で毎日PHP4と格闘している橋です、こんにちは。 さて、4繋がりということで、今日は先日β版がリリースされたばかりのFlashBuilder4を使って、 Flex4とsymfonyを連携させて遊んでみました。 Asialブログの購読者の方々の中に「symfonyって何??」って方はいらっしゃらないと思いますが、「Flexって何??」って方は中にはいらっしゃるかもしれないので、軽く説明。 Flexとは、Adobe社の提供するRIA(Rich Interface Application)開発のフレームワークです。 Adobeの得意分野であるFlashの技術をベースとしています。 インターフェースの作成には、MXMLというXMLを拡張した言語を用いて行います。 実行時には、MXMLファイルがswfファイルに変換され、クライアントのFlashPlayer上で実行されます。 Flexの開発

    Flex4とsymfonyを連携させて遊んでみた。
  • 1