タグ

2014年9月4日のブックマーク (4件)

  • PHPで利用できる配列操作系高階関数 - MANA-DOT

    PHP5.3からクロージャが利用可能であり、高階関数を積極的に利用して簡潔なコードを心がけたいのですが、一度調べておかないと意外な関数が利用可能であることに気づかなかったりするのでまとめ(個人的によく使う順)。 array_map PHP: array_map - Manual 高階関数で最も代表的と思われるもの。map-reduceのmap。配列の各要素をクロージャを用いたマッピングを行い、別の配列を作ります。 <?php $prices = [100, 200, 300]; $taxInPrices = array_map(function($price) { return $price * 1.08; }, $prices); var_dump($taxInPrices); // array(3) { // [0]=> float(108) // [1]=> float(216) /

    PHPで利用できる配列操作系高階関数 - MANA-DOT
    k-holy
    k-holy 2014/09/04
    array_reduce()の使いどころがやっと分かった。第三引数に配列なりコレクションなり指定してもいいのね。
  • Windowsユーザの私が最近使っている各種ツール(開発・資料作成・その他) - Qiita

    書いておけば履歴が残って便利なのでは?てことで書きました。 時代とともに追加・変更していこうと思います。 IDE PhpStorm PHP 及び Node.js での開発に使用。 クライアントワークで最も多く使用する。 PHP に限らず Web 開発ならこれ一でだいたいいける。 理論上可能ならだいたい静的解析してくれるため、言語仕様でやや難のある PHP でも一定の型安全性が確保できる。コード補完もこれ以上ないほど強力で軽快。 npm パッケージ管理ツールもついてて Node.js での開発に便利。 PHP IDE :: JetBrains サムライズムで購入した VisualStudio 2015 C#.NET WPF, Xamarin での開発に使用。 Visual Studio フレームワーク Phalcon PHP Framework その名の通り、PHP WAF。 PHP ex

    Windowsユーザの私が最近使っている各種ツール(開発・資料作成・その他) - Qiita
  • 【独断と偏見】C#erでも許せるかも知れないフルスタックPHP - Qiita

    なにかと dis られる言語 PHP ですが、dis られる要因としては 利用者が多い(少なければそもそも話題にならない) 言語自体に開発者を導くコンパスがない 結果的に負の遺産が多く築かれる ということがあると考えています。 PHP をうまく使ってご飯をべている身としていくら dis られようと何ら弊害はないのですが、PHP は OSS で安定性・拡張性・言語自体の開発の活発さを保っておりコミュニティもとても活発な言語なので、今回は「PHP を使うとしたらこうやるといいよ」という方向性で書いてみようと思います。 あくまで個人の主観に基づいた記事です。ご了承下さい。 あくまでウェブアプリケーションを開発することを想定しています。 (それ以外の用途があるとは思いませんが) その前に、なぜ PHP を使うのか PHP は書けば動くから簡単だよ という罠 この言葉を耳にしたのは専門学校時代です

    【独断と偏見】C#erでも許せるかも知れないフルスタックPHP - Qiita
  • PHPプリミティブ型(int,string,array...)にメソッドを生やそう - Qiita

    PHP extension が導入できる環境(Webサーバ管理権限等)が必要です できること JavaScript のプロトタイプ拡張や C# の拡張メソッドのように、string や array など、PHP のプリミティブ型にメソッドを 自由に追加 することができます。 // 単なる文字列 $str = "foo bar hoge"; // 文字列を空白で分割して配列に... // 条件で絞り込みつつ要素数を取得 echo $str ->split(' ') ->filter(function($x) { return $x->contains('o'); }) ->length(); // ... 2

    PHPプリミティブ型(int,string,array...)にメソッドを生やそう - Qiita
    k-holy
    k-holy 2014/09/04
    scalar_objects