當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。