data = $data; } /** * Close the file. Optional, you can just let the variable go out of scope. */ public function close() { $this->data = array(); $this->keys = null; } /** * Get a value with a given key. Only string values are supported. * * @param string $key * * @return bool|string The value associated with $key, or false if $key is not known. */ public function get( $key ) { return isset( $this->data[ $key ] ) ? $this->data[ $key ] : false; } /** * Check whether key exists * * @param string $key * * @return bool */ public function exists( $key ) { return isset( $this->data[ $key ] ); } /** * Fetch first key * * @return string */ public function firstkey() { $this->keys = array_keys( $this->data ); return $this->nextkey(); } /** * Fetch next key * * @return string */ public function nextkey() { if ( $this->keys === null ) { return $this->firstkey(); } return empty( $this->keys ) ? false : array_shift( $this->keys ); } }