public function test_ArrayImpl()
 {
     $expected = 110;
     $actual = a_::chain(a_::range(1, 11))->map(f::op('*', [2]))->sum();
     $this->assertEquals($expected, $actual);
 }
示例#2
0
//    string(6) "jirou "
//    ["domain"]=>
//    string(11) "hotmail.com"
//    ["age"]=>
//    string(1) "9"
//    ["pref"]=>
//    string(5) "tokyo"
//    ["email"]=>
//    string(17) "*****@*****.**"
//  }
//}
//
//
//
#30歳以上のメルアド(名前の空白を削除)を作る
$arr3 = _::chain($arr)->filter(function ($ele) {
    return $ele["age"] >= 30;
})->map(function ($ele) {
    $ele["email"] = trim($ele["name"]) . "@" . $ele["domain"];
    return $ele;
});
var_dump($arr3);
//object(Underbar\Internal\Wrapper)#2 (2) {
//  ["value":"Underbar\Internal\Wrapper":private]=>
//  array(2) {
//    [0]=>
//    array(5) {
//      ["name"]=>
//      string(7) " kazumi"
//      ["domain"]=>
//      string(9) "gmail.com"
示例#3
0
 /**
  * 女優データとタグデータをセットする
  *
  * @param unknown $items 商品id
  */
 private function setGirlAndTag($items)
 {
     $itemIdArr = array();
     //itemIdを取り出すためだけにループをまわす
     foreach ($items as $item) {
         $itemId = $item['Item']['id'];
         $itemIdArr[] = $itemId;
     }
     $tagData2 = $this->ItemTag->makeTagDataWhereInItemId($itemIdArr);
     //$girlData2 = $this->ItemGirl->makeGirlDataWhereInItemId( $itemIdArr );
     $tagHashGroupByItemId = _::groupBy($tagData2, function ($ele) {
         return $ele["item_id"];
     });
     $girlHashGroupByItemId = array();
     //女優、タグデータと結合する
     foreach ($items as &$item) {
         list($tagData3, $girlData3) = $this->merggeTgAndGirls($item['Item']['id'], $tagHashGroupByItemId, $girlHashGroupByItemId);
         $item['Tag'] = $tagData3;
         //$item['Girl'] = $girlData3;
     }
     return $items;
 }