/** * Returns configuration array (full, multidimensional format) * * @return array */ public function getConfig() { $c = $_SESSION[$this->_id]; foreach ($this->_cfgUpdateReadMapping as $map_to => $map_from) { PMA_arrayWrite($map_to, $c, PMA_arrayRead($map_from, $c)); PMA_arrayRemove($map_from, $c); } return $c; }
/** * Test for PMA_arrayRemove * * @return void */ function testRemove() { $arr = array("int" => 1, "str" => "str_val", "arr" => array('val1', 'val2', 'val3'), "sarr" => array('arr1' => array(1, 2, 3), array(3, array('a', 'b', 'c'), 4))); PMA_arrayRemove('int', $arr); $this->assertArrayNotHasKey('int', $arr); PMA_arrayRemove('str', $arr); $this->assertArrayNotHasKey('str', $arr); PMA_arrayRemove('arr/0', $arr); $this->assertArrayNotHasKey(0, $arr['arr']); PMA_arrayRemove('arr/1', $arr); $this->assertArrayNotHasKey(1, $arr['arr']); PMA_arrayRemove('arr/2', $arr); $this->assertArrayNotHasKey('arr', $arr); $tmp_arr = $arr; PMA_arrayRemove('sarr/not_existing/1', $arr); $this->assertEquals($tmp_arr, $arr); PMA_arrayRemove('sarr/arr1/0', $arr); $this->assertArrayNotHasKey(0, $arr['sarr']['arr1']); PMA_arrayRemove('sarr/arr1/1', $arr); $this->assertArrayNotHasKey(1, $arr['sarr']['arr1']); PMA_arrayRemove('sarr/arr1/2', $arr); $this->assertArrayNotHasKey('arr1', $arr['sarr']); PMA_arrayRemove('sarr/0/0', $arr); $this->assertArrayNotHasKey(0, $arr['sarr'][0]); PMA_arrayRemove('sarr/0/1/0', $arr); $this->assertArrayNotHasKey(0, $arr['sarr'][0][1]); PMA_arrayRemove('sarr/0/1/1', $arr); $this->assertArrayNotHasKey(1, $arr['sarr'][0][1]); PMA_arrayRemove('sarr/0/1/2', $arr); $this->assertArrayNotHasKey(1, $arr['sarr'][0]); PMA_arrayRemove('sarr/0/2', $arr); $this->assertEmpty($arr); }
/** * Returns configuration array (full, multidimensional format) * * @return array */ public function getConfig() { $c = $_SESSION[$this->_id]; foreach ($this->_cfgUpdateReadMapping as $map_to => $map_from) { // if the key $c exists in $map_to if (PMA_arrayRead($map_to, $c) !== null) { PMA_arrayWrite($map_to, $c, PMA_arrayRead($map_from, $c)); PMA_arrayRemove($map_from, $c); } } return $c; }