Example #1
0
 public function testToArray()
 {
     $this->list->insert('foo', 'foo_value', null);
     $this->list->insert('bar', 'bar_value', 1);
     $this->list->insert('baz', 'baz_value', -1);
     $this->assertEquals(array('bar' => 'bar_value', 'foo' => 'foo_value', 'baz' => 'baz_value'), $this->list->toArray());
     $this->assertEquals(array('bar' => array('data' => 'bar_value', 'priority' => 1, 'serial' => 1), 'foo' => array('data' => 'foo_value', 'priority' => 0, 'serial' => 0), 'baz' => array('data' => 'baz_value', 'priority' => -1, 'serial' => 2)), $this->list->toArray(PriorityList::EXTR_BOTH));
 }
Example #2
0
 /**
  * Make a deep clone of a fieldset
  *
  * @return void
  */
 public function __clone()
 {
     $items = $this->iterator->toArray(PriorityList::EXTR_BOTH);
     $this->elements = array();
     $this->fieldsets = array();
     $this->iterator = new PriorityList();
     $this->iterator->isLIFO(false);
     foreach ($items as $name => $item) {
         $elementOrFieldset = clone $item['data'];
         $this->iterator->insert($name, $elementOrFieldset, $item['priority']);
         if ($elementOrFieldset instanceof FieldsetInterface) {
             $this->fieldsets[$name] = $elementOrFieldset;
         } elseif ($elementOrFieldset instanceof ElementInterface) {
             $this->elements[$name] = $elementOrFieldset;
         }
     }
     $this->iterator->rewind();
     // Also make a deep copy of the object in case it's used within a collection
     if (is_object($this->object)) {
         $this->object = clone $this->object;
     }
 }
 public function getRawState($key = null)
 {
     $rawState = ['emptyWhereProtection' => $this->emptyWhereProtection, 'table' => $this->table, 'set' => $this->set->toArray(), 'where' => $this->where];
     return isset($key) && array_key_exists($key, $rawState) ? $rawState[$key] : $rawState;
 }
 /**
  * @param int $flag extraction flag @see PriorityList
  *
  * @return array
  */
 public function getUserCredentialsStrategies($flag = PriorityList::EXTR_DATA)
 {
     return $this->userCredentialsStrategies->toArray($flag);
 }