タグ

ブックマーク / qiita.com/Hiraku (5)

  • PHPで高速オシャレな配列操作を求めて - Qiita

    PHPには大量の配列操作関数が用意されています。 これらの関数、イマイチ書き味が悪いということで、よくPHPがDISられるポイントになっています。 お題として、こんな感じのコードを書きたいとしましょう。(意味は特にないです) 0~10000のうち、偶数だけを抽出して自乗し、結果が20を超えるものを足しあわせよ array_xxx系の関数だけで入れ子にしながら書くとこんなことになります。 echo array_sum( array_filter( array_map( function ($v) { return $v ** 2; }, array_filter(range(0, 10000), function ($v) { return $v % 2 === 0; }) ), function ($v) { return $v > 20; } ) ); 読めたもんじゃないですね。 関数の

    PHPで高速オシャレな配列操作を求めて - Qiita
  • WebAPIリクエスト仕様書としてcurlコマンドのご提案 - Qiita

    WebAPIの仕様を記述する方法はいくつかあると思う。 普通に日語で記述する JSON Hyper-Schema、WADL、RAML、Swaggerなどを使う 仕様書の代わりにプログラムを書く HTTPメッセージそのものを記述しておく でも、文法にばらつきがあったり、読みにくかったり、ツールのセットアップが面倒だったり、どれもイマイチな所があって、手軽な方法が欲しいと思っていた。 何気なくcurlコマンドのオプションを調べていたら、「もうこれでAPIドキュメント扱いにしちゃえばいいんじゃね?」と思えてきたのでメモしておく。 curlコマンドのおさらい curlコマンドはlibcurlの付属コマンドで、最近のUnix系OSなら大抵最初から入っていると思う。コマンドの詳細はmanを読んでいただければ。 cURL - How To Use (マニュアルページ日語訳) curlコマンドのオプシ

    WebAPIリクエスト仕様書としてcurlコマンドのご提案 - Qiita
  • コードをまとめる技術としてのイテレータとジェネレータ - Qiita

    ジェネレータが5.5から入ったことで完全に空気と化した(?)PHPのイテレータを、ちょっと違う面からまとめたいと思います。 コードをまとめるということ Don't Repeat Yourself(DRY)という言葉があります。達人プログラマーというに出てくる言葉です。 信頼性の高いソフトウェアを開発して、開発そのものを簡単に理解したりメンテナンスできるようにする唯一の方法は、DRY原則に従うことです。 「すべての知識はシステム内において、単一、かつ明確な、そして信頼できる表現になっていなければならない。」 (p. 27) 端的に言えば「同じことを二度書いてはいけない」ということですね。この原則を当てはめなくてもいい例外のパターンもいくつかあるのですが。。 コードにおいて「同じことを二度書いてはいけない」を忠実に守ろうとすると、同じコードを何度も書きたくなったら、何らかの方法でそのコードを

    コードをまとめる技術としてのイテレータとジェネレータ - Qiita
  • Zend_Db_Tableをもっと手軽に使う (コード解説編) #ZFhimekuri - Qiita

    Zend Framework 日めくりカレンダー2011の7日目、「間に合ってない」ってツッコミには土下座しつつ、Zend_Db_Tableをもっと手軽に使う(概要編) #ZFhimekuriの続き。 Githubに上げたサンプルコードの解説を書きます。 趣旨は「とにかくユルく、ActiveRecord風にZend_Db_Tableを使う」です。 1) 初期化はapplication.iniに。 データベースの接続先やパスワードをどこに書くかは開発者の悩みの種です。 素直にZend_Applicationをベースにしているアプリの場合は、application.iniに設定を書くだけでZend_Dbを初期化できます。 実際に使用するまでDBに接続しないので、実際にDBを使わないページが多くても安心です。

    Zend_Db_Tableをもっと手軽に使う (コード解説編) #ZFhimekuri - Qiita
  • Zend_Db_Tableをもっと手軽に使う(概要編) #ZFhimekuri - Qiita

    「Zend Framework 日めくり Calendar 2012」の3日目の記事です。何となくQiitaで書いてみます。 Zend Framework でデータベースを扱う時の定番モジュールがZend_Dbです。公式のQuickStartがわかりやすいんですが、TableDataGatewayをDataMapperから使うというガチガチ厳密な使い方をしているので、「難しそう」「面倒くさそう」という印象を受けるかもしれません。 もうちょっとお手軽に、不真面目に使う書き方を考えてみます。解説を長々と書くとダレそうなので2日間に分割します。今日は概要だけ。 用語の整理 Zend_Dbについて少し解説。主要なクラスはこの3つです。 Zend_Db … DAL(PDOのWrapper) Zend_Db_Table … O/R Mapper(Table Data Gateway) Zend_Db_

    Zend_Db_Tableをもっと手軽に使う(概要編) #ZFhimekuri - Qiita
  • 1