当前位置: 首页>>代码示例>>PHP>>正文


PHP StorageInterface::setItems方法代码示例

本文整理汇总了PHP中Zend\Cache\Storage\StorageInterface::setItems方法的典型用法代码示例。如果您正苦于以下问题:PHP StorageInterface::setItems方法的具体用法?PHP StorageInterface::setItems怎么用?PHP StorageInterface::setItems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend\Cache\Storage\StorageInterface的用法示例。


在下文中一共展示了StorageInterface::setItems方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: setItems

 /**
  * Set array of items
  * If items already exists, they are replaced
  * 
  * @access public
  * @param array $items
  */
 public function setItems($items)
 {
     $existingItemsKeys = array_flip($this->cacheAdapter->hasItems(array_keys($items)));
     $existingItems = array_intersect_key($items, $existingItemsKeys);
     $nonExistingItems = array_diff_key($items, $existingItemsKeys);
     if (count($existingItems) > 0) {
         $this->cacheAdapter->replaceItems($existingItems);
     }
     if (count($nonExistingItems) > 0) {
         $this->cacheAdapter->setItems($nonExistingItems);
     }
 }
开发者ID:camelcasetechsd,项目名称:certigate,代码行数:19,代码来源:Cache.php

示例2: testTagable

 public function testTagable()
 {
     if (!$this->_storage instanceof TaggableInterface) {
         $this->markTestSkipped("Storage doesn't implement TaggableInterface");
     }
     $this->assertSame(array(), $this->_storage->setItems(array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3')));
     $this->assertTrue($this->_storage->setTags('key1', array('tag1a', 'tag1b')));
     $this->assertTrue($this->_storage->setTags('key2', array('tag2a', 'tag2b')));
     $this->assertTrue($this->_storage->setTags('key3', array('tag3a', 'tag3b')));
     $this->assertFalse($this->_storage->setTags('missing', array('tag')));
     // return tags
     $tags = $this->_storage->getTags('key1');
     $this->assertInternalType('array', $tags);
     sort($tags);
     $this->assertSame(array('tag1a', 'tag1b'), $tags);
     // this should remove nothing
     $this->assertTrue($this->_storage->clearByTags(array('tag1a', 'tag2a')));
     $this->assertTrue($this->_storage->hasItem('key1'));
     $this->assertTrue($this->_storage->hasItem('key2'));
     $this->assertTrue($this->_storage->hasItem('key3'));
     // this should remove key1 and key2
     $this->assertTrue($this->_storage->clearByTags(array('tag1a', 'tag2b'), true));
     $this->assertFalse($this->_storage->hasItem('key1'));
     $this->assertFalse($this->_storage->hasItem('key2'));
     $this->assertTrue($this->_storage->hasItem('key3'));
     // this should remove key3
     $this->assertTrue($this->_storage->clearByTags(array('tag3a', 'tag3b'), true));
     $this->assertFalse($this->_storage->hasItem('key1'));
     $this->assertFalse($this->_storage->hasItem('key2'));
     $this->assertFalse($this->_storage->hasItem('key3'));
 }
开发者ID:ninahuanca,项目名称:zf2,代码行数:31,代码来源:CommonAdapterTest.php

示例3: delegatesSetItems

 /**
  * @test
  */
 public function delegatesSetItems()
 {
     $keyValuePairs = [];
     $this->storage->setItems($keyValuePairs)->willReturn(true);
     $return = $this->cache->setItems($keyValuePairs);
     $this->assertTrue($return);
 }
开发者ID:koinephp,项目名称:DelayedCache,代码行数:10,代码来源:DelayedCacheTest.php

示例4: testTaggable

 public function testTaggable()
 {
     if (!$this->_storage instanceof TaggableInterface) {
         $this->markTestSkipped("Storage doesn't implement TaggableInterface");
     }
     // store 3 items and register the current default namespace
     $this->assertSame([], $this->_storage->setItems(['key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3']));
     $this->assertTrue($this->_storage->setTags('key1', ['tag1a', 'tag1b']));
     $this->assertTrue($this->_storage->setTags('key2', ['tag2a', 'tag2b']));
     $this->assertTrue($this->_storage->setTags('key3', ['tag3a', 'tag3b']));
     $this->assertFalse($this->_storage->setTags('missing', ['tag']));
     // return tags
     $tags = $this->_storage->getTags('key1');
     $this->assertInternalType('array', $tags);
     sort($tags);
     $this->assertSame(['tag1a', 'tag1b'], $tags);
     // this should remove nothing
     $this->assertTrue($this->_storage->clearByTags(['tag1a', 'tag2a']));
     $this->assertTrue($this->_storage->hasItem('key1'));
     $this->assertTrue($this->_storage->hasItem('key2'));
     $this->assertTrue($this->_storage->hasItem('key3'));
     // this should remove key1 and key2
     $this->assertTrue($this->_storage->clearByTags(['tag1a', 'tag2b'], true));
     $this->assertFalse($this->_storage->hasItem('key1'));
     $this->assertFalse($this->_storage->hasItem('key2'));
     $this->assertTrue($this->_storage->hasItem('key3'));
     // this should remove key3
     $this->assertTrue($this->_storage->clearByTags(['tag3a', 'tag3b'], true));
     $this->assertFalse($this->_storage->hasItem('key1'));
     $this->assertFalse($this->_storage->hasItem('key2'));
     $this->assertFalse($this->_storage->hasItem('key3'));
 }
开发者ID:MehrAlsNix,项目名称:zf-couchbase2,代码行数:32,代码来源:CommonAdapterTest.php

示例5: testSetItemAndSetItemsCallSaveWithTtl

 public function testSetItemAndSetItemsCallSaveWithTtl()
 {
     $ttl = rand();
     $provider = $this->getMock('Doctrine\\Common\\Cache\\ArrayCache');
     $provider->expects($this->exactly(4))->method('save')->with($this->anything(), $this->anything(), $ttl);
     $this->storage = new DoctrineCacheStorage($this->options, $provider);
     $this->options->setTtl($ttl);
     $this->storage->setItem('key', 'value');
     $items = array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3');
     $this->storage->setItems($items);
 }
开发者ID:bantudevelopment,项目名称:polysmis,代码行数:11,代码来源:DoctrineCacheStorageTest.php

示例6: testSetGetHasAndRemoveItemsWithNamespace

 public function testSetGetHasAndRemoveItemsWithNamespace()
 {
     $items = array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3');
     $this->_options->setNamespace('defaultns1');
     $this->assertSame(array(), $this->_storage->setItems($items));
     $this->_options->setNamespace('defaultns2');
     $this->assertSame(array(), $this->_storage->hasItems(array_keys($items)));
     $this->_options->setNamespace('defaultns1');
     $rs = $this->_storage->getItems(array_keys($items));
     $this->assertInternalType('array', $rs);
     foreach ($items as $key => $value) {
         $this->assertArrayHasKey($key, $rs);
         $this->assertEquals($value, $rs[$key]);
     }
     $rs = $this->_storage->hasItems(array_keys($items));
     $this->assertInternalType('array', $rs);
     $this->assertEquals(count($items), count($rs));
     foreach ($items as $key => $value) {
         $this->assertContains($key, $rs);
     }
     // remove the first and the last item
     $this->assertSame(array('missing'), $this->_storage->removeItems(array('missing', 'key1', 'key3')));
     unset($items['key1'], $items['key3']);
     $rs = $this->_storage->getItems(array_keys($items));
     $this->assertInternalType('array', $rs);
     foreach ($items as $key => $value) {
         $this->assertArrayHasKey($key, $rs);
         $this->assertEquals($value, $rs[$key]);
     }
     $rs = $this->_storage->hasItems(array_keys($items));
     $this->assertInternalType('array', $rs);
     $this->assertEquals(count($items), count($rs));
     foreach ($items as $key => $value) {
         $this->assertContains($key, $rs);
     }
 }
开发者ID:antoinealej,项目名称:HomeStuff,代码行数:36,代码来源:DoctrineCacheStorageTest.php

示例7: setItems

 public function setItems(array $keyValuePairs)
 {
     return $this->storage->setItems($keyValuePairs);
 }
开发者ID:nasimnabavi,项目名称:DelayedCache,代码行数:4,代码来源:DelayedCache.php


注:本文中的Zend\Cache\Storage\StorageInterface::setItems方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。