タグ

ブックマーク / shimooka.hateblo.jp (6)

  • PHPによるデザインパターン入門 - Composite〜木構造を表す - Do You PHP はてブロ

    このエントリは、Do You PHP?(www.doyouphp.jp)で公開していたコンテンツを移行/加筆/修正したものです。公開の経緯はこちらをどうぞ。目次はこちらです。サンプルコードを手直ししたものをgithubに上げてありますのでそちらもどうぞ。 GoFにおける分類 構造+オブジェクト はじめに ここではCompositeパターンについて見ていきましょう。 「composite」とは「合成物」「混合物」という意味を持ちます。ということは、Compositeパターンは、何かを混ぜるためのパターンなのでしょうか? Compositeパターンは、単一のオブジェクトとその集合のどちらも同じように扱えるようにするためのパターンです。つまり、「単一のオブジェクト」と「オブジェクトの集合」を混ぜて、アクセス方法を同じにしてしまうパターンです。 分かるような分からないような、不思議なパターンです

    PHPによるデザインパターン入門 - Composite〜木構造を表す - Do You PHP はてブロ
    Chisei
    Chisei 2015/06/06
  • Do You PHP はてな - 出力バッファとflush()・ob_flush()

    しばらく使わないとすっかり忘れてしまうので、まとめてメモ。 ありがちなネタとして、 プログレスバー(進捗状況をリアルタイムに表示) 「お待ちください」と表示させて裏で処理を実行し、処理が終わったら結果を表示する などがありますが、これらを行うには出力データのバッファリング/フラッシュを行うことになります。 で、PHP的にはob_*関数やflush関数を使うことになりますが、[PHP-users 18135]プログレスバーは実現可能か?のスレッドから flush()が動作する条件は、出力バッファが無いこと ob_flush()が動作する条件は、出力バッファのネストレベルが1であること 出力バッファのネストレベルはob_get_level()で取得できる output_handler、output_buffer(> 0)を指定すると、ネストレベルが変わります という注意点が挙げられます。 たと

    Chisei
    Chisei 2012/12/27
  • 効率的なWebアプリケーションの作り方〜PHPによるモダン開発入門 - Do You PHP はてブロ

    [twitter:@cocoitiban]さんの脱非モテ宣言が聞かれる今日この頃、皆さんいかがお過ごしでしょうか? それは置いといて、著者の[twitter:@fivestr]さんから献いただきました。ありがとうございます:-) 効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門 作者: 小川雄大出版社/メーカー: 技術評論社発売日: 2012/05/26メディア: 大型購入: 6人 クリック: 146回この商品を含むブログ (8件) を見る 効率的なWebアプリケーションの作り方 〜PHPによるモダン開発入門:書籍案内|技術評論社 ざっとですがようやく一通り目を通しましたので、感想など書いてみようと思います。 また、すでに[twitter:@yando]さんと[twitter:@cocoitiban]さんの書評があります。 http://blog.candycane

    効率的なWebアプリケーションの作り方〜PHPによるモダン開発入門 - Do You PHP はてブロ
    Chisei
    Chisei 2012/07/12
    読んだ。
  • memcachedに登録されているすべてのキーを抜き出す - Do You PHP はてブロ

    先ほどのmemcacheの件の続き。 Protocol docsには、先ほど使ったコマンド stats cachedump の説明がありません。どっかにないな?かとググってみると、やたらとPHPマニュアルが引っかかりました。 PHP: Memcache::getExtendedStats - Manual え?ひょっとして、これがそうなの?てっきりダメなのかと思ってた。。。 ちなみに PHP: Memcache::getStats - Manual でも同様のようです。 ということで、PHP+memcache+Repcachedを試してみた みたび - Do You PHP はてなにあるコードを元にした、以下のようなコードで確認。 <?php $servers = array(array('ip' => '192.168.121.130', 'port' => 11211), array(

    memcachedに登録されているすべてのキーを抜き出す - Do You PHP はてブロ
    Chisei
    Chisei 2010/01/27
    slabsか
  • spidermonkey拡張モジュール - Do You PHP はてブロ

    SpiderMonkeyは、Cで書かれたGeckoのJavaScriptエンジンで、Firefoxにも採用されています。 で、このSpiderMonkeyのPHPバインディングが出てきました。PHP5.3以降が必要です。 PECL :: Package :: spidermonkey 「PHPjavascriptを動かす」モジュールらしく、javascriptコードにPHPの関数や変数を引き渡して使えるっぽいとのこと。とりあえず試してみました。環境は PHP5.3.0β1 spidermonkey 0.1.1 です。 まずはインストール。libjs 1.7.0以上が必要とのことで、こちらからインストール。。。。なんですが、Compiling and Installing SpiderMonkey 1.7.0 in Linux. « the DtTvB's Old Blogを参考に手動でイ

    spidermonkey拡張モジュール - Do You PHP はてブロ
  • Yahoo! が PHP エンジニアを雇う時に聞く質問

    via.Yahoo!PHPエンジニアを雇う時に聞く質問 | IDEA*IDEA とりあえず適当に訳してみました。間違いがあれば指摘をお願いします :-) 1.配列usersに「john」を追加しないのはどれか? 1. $users[] = ‘john’; 2. array_add($users,’john’); 3. array_push($users,‘john’); 4. $users ||= ‘john’;2. sort(), assort(), ksort()の違いを述べよ。また、どういった状況で利用するかを述べよ。 3. 以下のコードは何を出力するか?それはなぜか? $num = 10; function multiply(){ $num = $num * 10; } multiply(); echo $num;4. 参照と通常の変数の違いを述べよ。また、どのように参照渡しをす

    Yahoo! が PHP エンジニアを雇う時に聞く質問
    Chisei
    Chisei 2007/05/24
    これはやっておいたほうが良さそう
  • 1