タグ

phpに関するsinamon129のブックマーク (10)

  • foreachの$valueを参照で受けると思わぬバグを引き起こす - ぱせらんメモ

    PHP :: Bug #29992 :: foreach by reference corrupts the array <?php $array = array(1, 2, 3); foreach ($array as &$value) {} var_dump($array); foreach ($array as $value) {} var_dump($array); ?> PHP5からはforeachの$valueの部分を参照で受け取ることができるようになったんだが、このコードがいとも簡単に配列$arrayをぶち壊してしまうというお話。 上記コードの結果を予測できるかな? array(3) { [0]=> int(1) [1]=> int(2) [2]=> &int(3) } array(3) { [0]=> int(1) [1]=> int(2) [2]=> &int(2) //

    foreachの$valueを参照で受けると思わぬバグを引き起こす - ぱせらんメモ
  • isset と array_key_exists - odz buffer

    昨日の続き。 2. array_key_existsよりハッシュを使え array_searchは、毎回全データを検索するので遅いです。 データに配列の順序が関係ないなら、連想配列 + issetを使うほうが高速です。 連想配列の場合ハッシュの仕組みが使われるのでその分高速です。 同様に、array_key_existsよりissetのほうがはるかに高速です。 array_search が遅いのはそのとおりだが、array_key_exists だってハッシュを使った検索じゃないかな。 実際、ベンチマーク(コードと結果は後述)を取ると確かに isset のほうが3倍ぐらい速いのであるが、高々3倍であることを考えると array_key_exists だってコストは定数時間な訳で配列の要素数などは関係ないように思える。 そもそも、isset と array_key_exists は配列が n

    isset と array_key_exists - odz buffer
  • 簡単にPHPをmakeしてみた #vgadvent2013 - ぷぎがぽぎ

    初めての方こんにちは!!いつもお世話になっている方こんにちは!! VOYAGE GROUP エンジニアブログ Advent Calendar 2013 の3日目担当の @brtriver です。 Zucks で広告配信システムのアレやコレをやってるエンジニアです。 冬と言えば鍋。そうPHPですね! 皆さんはどうやってPHPをmakeしてますか? yumやapt-getを使ってるという方も多いと思います。 今回は簡単なmake方法について紹介してみます。 適当な大きさで丸める まずは、軽量樹脂粘土を用意します。PHPなので、青と白があればとりあえず大丈夫ですね。 今回は目玉用に黒も用意してますが、なければマジックペンとかでも大丈夫です。 青は白と混ぜて良い感じの色にします。 じっくりと引き延ばしながらこねるこがコツです。 耳としっぽを作る できあがった青色粘土を適当に丸める。 体をmake

    簡単にPHPをmakeしてみた #vgadvent2013 - ぷぎがぽぎ
  • CentOS6のPHP5.3をPHP5.4に入れ替える - Qiita

    追記:PHP5.5のインストール方法を投稿しました(2013/10/04) http://qiita.com/pakiln/items/bcddcdd96e94dab96873 CentOS6のPHPはバージョン5.3.2で新しくはありません。 IUS(http://dl.iuscommunity.org/pub/ius/stable/Redhat/ )にPHP5.3系とPHP5.4系の新しいパッケージが用意されているのでその5.4に差し替えます。 手順はIUSのリポジトリを追加、それからCentOSデフォルトのPHP5.3をアンインストールして、IUSのPHP5.4をインストールです。 まずIUSリポジトリの追加。EPELリポジトリも必要らしいのでまとめて追加します。 $ wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x8

    CentOS6のPHP5.3をPHP5.4に入れ替える - Qiita
  • 書籍「PHPによるデザインパターン入門」の原稿テキストを公開します - Do You PHP はてブロ

    ご報告が遅くなりましたが、去る2009/09/14に絶版となりました orz 出版から3年ですか。自分が最初に書いた(雑誌ではなく)で、いろいろな思い入れはあったんですが、やっぱりCakePHPなどのフレームワークとかJavascript関連などの"今、熱い"技術と違って、"ブーム"が去るのが早いですね。。。 製作に関わっていただいた方、また書店で手に取っていただいた方、ありがとうございました。 で、これに伴い、校正前の原稿テキストを(一部を除き)順次公開しようと思います。基的に『原稿テキストをHTML形式に変換したもの+図画そのまま』ですので、誤字/脱字、説明不足の箇所もあるかも知れませんがご了承ください。挿絵はありません。 http://www.doyouphp.jp/book/book_phpdp.shtml とりあえず、第1章、第4章のTemplateMethodを公開しま

    書籍「PHPによるデザインパターン入門」の原稿テキストを公開します - Do You PHP はてブロ
  • PHP勉強会@東京#58でPhakeの紹介をしました - FLOG SPLASH

    第58回PHP勉強会@東京 - events.php.gr.jp 久々のPHP勉強会だったのでPhakeについて発表をしてきました。とても久々のPHP勉強会でしたが、懇親会で色々お話もできて楽しかったです。 訂正 Phake::mock()の第2引数以降がうんたら書いてますけど、第2引数以降がコンストラクタの引数になるのはパーシャルモックのときだけでした。 id:sotarokのPHP 5.4の話のときにもいってたんですけど、「ゲッターセッター用意するの面倒だからAccessorってトレイトつくったよ!」「おれも!」みたいなことがあったりして、考えることはまったく同じですね。僕が作ってたときのソースさらしておきます。__call()をトレイトで実装しちゃうと、__call()が衝突しちゃうので一応メソッドわけてます。MagicCallMixerトレイトとか作ったけど消しちゃったらしい。 <

    PHP勉強会@東京#58でPhakeの紹介をしました - FLOG SPLASH
  • Libpuzzle - A library to find similar pictures

    The Puzzle library The Puzzle library is designed to quickly find visually similar images (gif, png, jpg), even if they have been resized, recompressed, recolored or slightly modified. The library is free, lightweight yet very fast, configurable, easy to use and it has been designed with security in mind. The Puzzle library is designed to quickly find visually similar images (GIF, PNG, JPG), even

  • CakePHPで作るシンプルなアップロードフォーム。 | Almondlab

    CakePHPでファイルをアップロードするための基機能のみフォームのサンプルです。使用しているCakePHPのバージョンは2.1.2です。 データベースには「uploads」というテーブルを作り、ファイル名を保存するために「file_name」のカラムを設けています。 CREATE TABLE uploads ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, file_name VARCHAR(50), created DATETIME DEFAULT NULL, modified DATETIME DEFAULT NULL );

    CakePHPで作るシンプルなアップロードフォーム。 | Almondlab
  • PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記

    メリークリスマス! PHP Advent Calendarもいよいよ24日目に突入です。 昨日はxhprofについてでしたね。僕もパフォーマンスチューニングの際に使っています。手軽に利用できるのでお勧めです。 さて、このエントリーでは表題の通りMVCについて書かせていただきます。これは、PHPカンファレンス2012&WordCamp Tokyo2012合同LT大会で発表した「やはりお前らのMVCは間違っている」で煽るだけだったこの問題をきちんと解説するものです。 この発表資料を公開するとPHPの枠を超えて広く閲覧いただき*1、また多くの方から突っ込みを戴きました。「LTだから」と言って逃げていた回答をして、気持ち新たに新年を迎えようと思います。 MVCとはなんなのか 間違いを指摘する前にMVCがそもそもどういうアーキテクチャであるのかを確認しなければいけません。 MVCは1970年代にパロ

    PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記
  • CakePHPを使ったMVC設計のベストプラクティス - Sooey

    CakePHPを使ったMVC設計のベストプラクティス 個人的にはCakePHPはあまり好きではないのですが、CakePHP開発メンバーによるMVCデザインの記事 (CakePHP のおいしいべ方)で紹介されていたBest Practices in MVC Design with CakePHP (php|architect’s C7Y)はMVCフレームワーク利用者にとってとても有用な情報だったので、訳してみました(php|architectの方には翻訳許可を頂いています)。 この記事を読んでドメインモデルに興味を持った方は、エンタープライズ アプリケーションアーキテクチャパターン(PoEAA)やDomain-Driven Design: Tackling Complexity in the Heart of Softwareに手を出してみるのもいいかも。他に、InfoQにユーザー登録すれ

  • 1