public function get_readers($interface = null) {
        $this->init();
        $return = array();
        foreach ($this->readers as $plugin => $reader) {
            if (empty($interface) || ($reader instanceof $interface)) {
                $return[$plugin] = $reader;
            }
        }

        return $return;
    }
public function get_readers($interface = null) {
        $this->init();
        $return = array();
        foreach ($this->readers as $plugin => $reader) {
            if (empty($interface) || ($reader instanceof $interface)) {
                $return[$plugin] = $reader;
            }
        }

        return $return;
    }
public function get_readers ( $ interface = null ) { $ this -> init ( ) ; $ return = array ( ) ; foreach ( $ this -> readers as $ plugin => $ reader ) { if ( empty ( $ interface ) || ( $ reader instanceof $ interface ) ) { $ return [ $ plugin ] = $ reader ; } } return $ return ; }
Returns list of available log readers.

This way the reports find out available sources of data.

@param string $interface Returned stores must implement this interface.

@return \core\log\reader[] list of available log data readers
Returns list of available log readers .