PHP

「基本からしっかり学ぶ Symfony2 入門」メモ(3)

「基本からしっかり学ぶ Symfony2 入門」を買った。 基本からしっかり学ぶ Symfony2入門作者: 後藤秀宣,金本貴志出版社/メーカー: 技術評論社発売日: 2015/12/16メディア: 大型本この商品を含むブログを見る 基本からしっかり学ぶ Symfony2入門:書籍案内|…

「基本からしっかり学ぶ Symfony2 入門」メモ(2)

「基本からしっかり学ぶ Symfony2 入門」を買った。 基本からしっかり学ぶ Symfony2入門作者: 後藤秀宣,金本貴志出版社/メーカー: 技術評論社発売日: 2015/12/16メディア: 大型本この商品を含むブログを見る 基本からしっかり学ぶ Symfony2入門:書籍案内|…

「基本からしっかり学ぶ Symfony2 入門」メモ(1)

「基本からしっかり学ぶ Symfony2 入門」を買った。 基本からしっかり学ぶ Symfony2入門作者: 後藤秀宣,金本貴志出版社/メーカー: 技術評論社発売日: 2015/12/16メディア: 大型本この商品を含むブログを見る 基本からしっかり学ぶ Symfony2入門:書籍案内|…

シンプルなテンプレートエンジンPlatesをSilexで使ってみる

PHP

Platesという、シンプルなテンプレートエンジンを使ってみた。 小さなWebアプリケーションでTwigが必要なほどではない場合にはちょうど良いと思う。 Plates - Native PHP Templatesplatesphp.com まずはSilexで最低限のものを実装しよう。 { "require": { "s…

OSC2015北海道で「phpspecで学ぶLondon School TDD」という発表をしてきました

見た目を重視してこんなタイトルにしてみましたが、基本的には私が「実践テスト駆動開発」と「phpspec」をどう解釈したか、というような内容になっています。 45分あってもなかなか伝えるのが難しいテーマだったのですが、とりあえず時間厳守はできてよかっ…

書初め

php

format("Y-m-d, o W D"), PHP_EOL; $dt->add($aDay); } $ php year.php 2014-12-27, 2014 52 Sat 2014-12-28, 2014 52 Sun 2014-12-29, 2015 01 Mon 2014-12-30, 2015 01 Tue 2014-…

StackPHPを使ってみる(Middlewareを作る)

PHP

自分でMiddlewareを作る ひな形はこんな感じ。 app = $app; } public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $…

StackPHPを使ってみる(Twitter認証)

PHP

StackPHPというのが正式名称なのかわからないけど。 http://stackphp.com/ ひな形 HttpKernelInterfaceを実装した$appを準備する。 スタックを作る。 $stack->resolve($app); $appを実行する push(...) ->push(...); $app = $stack->resolve($app); // 3. //…

"Design How Your Objects Talk Through Mocking"を見た

Konstantin Kudryashov - Design How Your Objects Talk Through Mocking at Laracon EU 2014 - YouTube BehatやPhpSpecの作者である@everzetによるLaracon EU 2014での講演です。 英語が苦手なので翻訳することはできませんが印象的かつ聞き取れた部分を要…

1つのSubjectに集中せよ - phpspecのコンセプト

1つ前のエントリで「知らないうちに」と書きましたが、実際は2012年からphpspec2という名前で存在していて、途中でphpspecのリポジトリに統合されたようです。 commit f6b8f26c563cfd07af28a7d4bdcf41a1aee33556 Author: Marcello Duarte <marcello.duarte@gmail.com> Date: Mon Apr 29 </marcello.duarte@gmail.com>…

知らないうちにphpspecがすごいことになっていた件

昔あったphpspecが進化したものなのかそれとも別のものなのかは知りませんが。 すごい。軽くキモい。17分の動画です。 Laracasts | PHPSpec is So Good まず、いきなり「MovieCollectionにMovieをadd()するとcountが1になること」というのスペックを書きます…

Pimple 2.0がリリースされたのでPimpleについて復習してみる

php

ぶっちゃけ出るなんて思ってませんでしたが、Pimple 2.0がリリースされたので、1.xの復習と2.0での変更について調べてみます。 Pimple - A simple PHP Dependency Injection Container Pimple(1.x)の基本 DIコンテナとは何か、という説明をはぶいてPimple…

個人的2012年のPHPの話題振り返り

PHP

Symfony2/Silex関連 Create your own framework... on top of the Symfony2 Componentsを読んだ - iakioの日記 Symfony2のControllerResolverを読む - iakioの日記 Symfony2/SilexのControllerResolverを読む2 - iakioの日記 私の今年最初の日記は、Fabien P…

たった数行のコードでひたすらアイドル水着画像をあつめるのをGoutteで書いてみた

PHP

あくまで勉強になると思って、あくまで勉強になると思って、Goutteでやってみました。 たった10行のコードでひたすらアイドル水着画像をあつめる - UT Startup Gym たった3行のコードでひたすらアイドル水着画像をあつめる(Rubyだよ) - maeharinの日記 Gou…

PHPUnitがファイル1つで動くようになったよ!

まだあまり話題になっていないようなので。PHPUnitは以前はPEARでインストールするのが主流でしたが*1、最近ファイル1つをダウンロードするだけで使えるようになりました。http://pear.phpunit.de/get/phpunit-3.7.5.pharこれをダウンロードして実行するだけ…

"Mock Roles, not Objects"をPHPで写経してみた

php

モックによるインターフェイスの発見 - Digital Romanticismを参考にしつつ、「モックをロールせよ(pdf)」をPHPで写経してみました。https://github.com/iakio/mrno-php 最初はPHPUnit_MockObjectを使おうと思っていたけど上手く書けなかったのでMockeryとPh…

EasyPHPでインストールしたPHPをコマンドプロンプトから使う

PHP

今まで知らなかったけどこれいいね。 EasyPHP | Install a local WAMP server : PHP 5 VC9, Apache 2 VC9, MySQL 5, PhpMyAdmin, Xdebug and Modules on Windows XP/Vista/Seven いわゆるWamp environment。気に入ったところは 管理者権限なくてもインストー…

antのmodifiedセレクタ

php

Template for Jenkins Jobs for PHP Projects を試してます。antのbuild.xmlを手書きするのなんて何年ぶりだろう。 <target name="lint" description="Perform syntax check of sourcecode files"> <apply executable="php" failonerror="true"> <arg value="-l" /> <fileset dir="${basedir}/src"> <include name="**/*.php" /> <modified /> </modified></include></fileset></arg></apply></target>

PHPUnitのDBUnit拡張をPHPUnitの外側で使う

php

DBUnitにはXML、YAML、CSVや任意のSQLを使ってDataSetを定義し、それらをINSERT、DELETE、UPDATE、TRUNCATEする機能があります。 第8章 データベースのテスト これらの機能をPHPUnitを使わずに呼び出すこともできます。

PHPUnitのMockが生成するコード

PHP

PHPUnitのMockはコードを生成してeval()しているわけだけれども、PHPUnit_Framework_TestCase#getMockBuilder()の引数に存在しないクラス名を渡すと、そのクラスを生成するコードも出力する。どんなコードを生成しているかはこのように確認できる。

Symfony2/SilexのControllerResolverを読む2

PHP

ところで、Silex\ControllerResolverにはこんなコードがあるんですがこれは何をやってるんでしょうねえ。 protected function doGetArguments(Request $request, $controller, array $parameters) { foreach ($parameters as $param) { if ($param->getClass…

Symfony2のControllerResolverを読む

php

"Create your own framework... on top of the Symfony2 Components"を読んで、Symfony2とSilexに興味がわいてきたので色々実験してみました。とりあえず"Create your own framework..."でやったCalendarをSilexでどう実装するかを考えてみます。Silexといえ…

Create your own framework... on top of the Symfony2 Componentsを読んだ

PHP

2ヶ月前にブックマークした"Create your own framework... on top of the Symfony2 Components"を写経しつつやっと読みました。面白かったです。フレームワークがどのような問題を解決しようとしているか、という話もありますが、それよりSymfonyやSilexをや…

Windowsでphpunit --colors

あるいはコマンドプロンプトでANSIカラーを表示させる方法。Windowsのコマンドプロンプトでphpunit --colorsすると、 こんな感じになります。ゲンナリです。グリーンにならないならテストに対する意欲も半減です。コマンドプロンプトに色を付けるには、SetCo…

TDD Boot Camp 札幌 2.3に参加してきた

TDD Boot Camp 札幌 2.3 : ATND お題はボーリングのスコア計算システム。PHPチームで参加してきました。ドキュメントを見ようとしたら、PHPUnitのサイトに全然接続できなくてどうしようかと思いましたが、githubでドキュメントのソースのxmlを見ながらどうに…

fork()した子プロセスが同じrand()を返す

PHP

第13回 LOCAL PHP部 勉強会でvimの話をしてきました

この手のイベントに参加するの、、、というか仕事以外で人と会うの何ヶ月ぶりだろうというくらい引き込もってましたが。 第13回 LOCAL PHP部 勉強会 : ATND 言い忘れてたことや補足など 去年のOSCでもvimの話をしてるのでこっちも見てね!! http://d.hatena.n…

5年遅れのブラウザリロードをPHPで

PHP

2006年頃、ブラウザリロードブームというのがあった。エディタでファイルを保存したら自動的にブラウザがリロードしたら便利だよねという話。 CSSファイルを保存すると同時にブラウザをリロード - Weblog - hail2u.net あーこれならPHPでも出来そうじゃん。…

そもそも最短の関数って何だろう

PHP

string(1) "_" [1]=> string(2) "dl" [2]=> string(2) "pi" [3]=> string(3) "tan" [4]=> …

与えられた引数をそのまま返す最短のビルトイン関数って何だろう

PHP

Rubyの文字列内の式展開みたいなことをPHPでやる方法として、与えられた引数をそのまま返す関数を作っておいて文字列内で可変関数として呼び出すという方法がある。 http://twitter.com/#!/iakio/status/21577621837 http://www.php.net/manual/ja/language.…