本文整理匯總了PHP中Cake\Collection\Collection::reduce方法的典型用法代碼示例。如果您正苦於以下問題:PHP Collection::reduce方法的具體用法?PHP Collection::reduce怎麽用?PHP Collection::reduce使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Cake\Collection\Collection
的用法示例。
在下文中一共展示了Collection::reduce方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: _getTagString
protected function _getTagString()
{
if (isset($this->_properties['tag_string'])) {
return $this->_properties['tag_string'];
}
if (empty($this->tags)) {
return '';
}
$tags = new Collection($this->tags);
$str = $tags->reduce(function ($string, $tag) {
return $string . $tag->label . ', ';
}, '');
return trim($str, ', ');
}
示例2: testReduce
/**
* Tests reduce
*
* @return void
*/
public function testReduce()
{
$items = ['a' => 1, 'b' => 2, 'c' => 3];
$collection = new Collection($items);
$callable = $this->getMock('stdClass', ['__invoke']);
$callable->expects($this->at(0))->method('__invoke')->with(10, 1, 'a')->will($this->returnValue(11));
$callable->expects($this->at(1))->method('__invoke')->with(11, 2, 'b')->will($this->returnValue(13));
$callable->expects($this->at(2))->method('__invoke')->with(13, 3, 'c')->will($this->returnValue(16));
$this->assertEquals(16, $collection->reduce($callable, 10));
}
示例3: testReduceWithoutInitialValue
/**
* Tests reduce without initial value
*
* @return void
*/
public function testReduceWithoutInitialValue()
{
$items = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4];
$collection = new Collection($items);
$callable = $this->getMock('stdClass', ['__invoke']);
$callable->expects($this->at(0))->method('__invoke')->with(1, 2, 'b')->will($this->returnValue(3));
$callable->expects($this->at(1))->method('__invoke')->with(3, 3, 'c')->will($this->returnValue(6));
$callable->expects($this->at(2))->method('__invoke')->with(6, 4, 'd')->will($this->returnValue(10));
$this->assertEquals(10, $collection->reduce($callable));
}