Skip to content

Instantly share code, notes, and snippets.

# language: ja
フィーチャ: 初めてのフィーチャ
PHPerとして
PHP 5.3.2以降を使いたい
なぜならSymfony2が動作する必須要件だからだ
シナリオ: PHPのバージョンを調べる
もし PHPのバージョン番号を取得する
ならば 取得したバージョン番号が "5.3.2" 以上であること
@hidenorigoto
hidenorigoto / CashRegister-advanced.md
Last active May 9, 2020 06:03
レジ問題アドバンスト

フォークじゃない 〜 横へな 2014.2.1 問題

上記の問題を、次のように拡張する。

  1. セルフレジの導入。
    • セルフレジは、レジの処理能力値を持たない。
    • 客は、セルフレジで会計することを好む客と、そうでない客がいる。
    • セルフレジで会計することを好む客は、レジ処理熟練度を持つ。熟練度(数値)は大きいほど処理が早く、具体的には、熟練度が10であれば、この問題の処理単位時間の10分の1の時間で会計を終えられる。
    • X客は、セルフレジでも絶望的に時間がかかる。
  2. キャッシュレス払い対応
reviewers title content_template weight card
erictune
Podの概要
templates/concept
10
name weight
コンセプト
60
@hidenorigoto
hidenorigoto / IntlDateFormatter.php
Last active November 20, 2017 01:32
INTL(ICU)のIntlDateFormatterを使って和暦、曜日を表示
<?php
$date = new \DateTime();
// 平成◯◯年
$dateFormatter = \IntlDateFormatter::create(
"ja_JP@calendar=japanese",
\IntlDateFormatter::FULL,
\IntlDateFormatter::FULL,
"Asia/Tokyo",
\IntlDateFormatter::TRADITIONAL,
{
"sets": [
{
"name":"set1",
"fields":[
"id","name","email"
]
},
{
"name":"set2",
モジュール分割して疎結合に保ち連携を非同期にすることは、非機能要件の充足のために大きな意味を持つ。
機能の的確な分割なしにモジュールを分割することは出来ない。
非機能要件を充足する上で機能分割はとても重要。
P:モジュールを分割する
P’:モジュールを疎結合に保ち連携を非同期にする
Q:非機能要件を充足する
R:機能を分割する
(1) P ⊃ Q 大前提
@hidenorigoto
hidenorigoto / test.php
Created June 1, 2016 14:52
PHPExcelでシート名を取得
<?php
require_once './vendor/autoload.php';
//Excel2007形式(xlsx)ファイルのリーダーを生成
$obj_excel_reader = PHPExcel_IOFactory::createReader("Excel2007");
//test.xlsxの読み込み
$obj_excel = $obj_excel_reader->load("test.xlsx");
//test.xlsxのシートの名称一覧を配列で取得
@hidenorigoto
hidenorigoto / env.php
Created May 29, 2011 06:04
Install Behat (Symfony SE 2.0.1)
<?php
// for Symfony2 tests
$world->getContainer = function() use ($world) {
return $world->getSession()->getDriver()->getClient()->getKernel()->getContainer();
};
$world->getEm = function() use ($world) {
return $world->getContainer()->get('doctrine')->getEntityManager();
};

BEAR.ResourceのGuzzle依存バージョンについて調べたメモ

see Upgrade Guzzle

  • Guzzleは、AWS-SDK-PHPが強く依存しており、この改善に合わせてかなり高頻度にバージョンアップされている (AWS-SDK-PHPのcomposer.jsonで、依存するguzzleを頻繁に更新している)
  • 上のバージョンアップ時に問題となっている箇所については、元のコードで使っていたメソッド(getHeaders()->getAll())が内部に連想配列を持つCollectionを返していた。利用側からはただの配列のように扱えた。
  • Guzzleのこのコミットで、ヘッダーの取り扱いが単純なCollectionからHeaderCollectionに置き換えられた。この修正において、getHeaders()はHeaderCollectionオブジェクトを返すようになったが、HeaderCollectionのgetAll()メソッドが返すのは内部に保持しているHeaderオブジェクトの配列となっている(個々のHeaderオブジェクトはArrayAccessに対応していない)。
  • BEAR.Resource側では、guzzleから取得したヘッダー情報を連想配列として利用しようとしている

https://github.com/MugeSo/BEAR.Resource/blob/c63a67696571b68966ad3887ebccf76da39bf9d9/src/BEAR/Resource/Adapter/Http/Guzzle.php#L126