$content ) ); } /** * Append an entry. * * @param string $message Message. * @param array $context Context. * @return void */ private static function write( $message, array $context ) { $log = get_option( self::OPTION, array() ); $log = is_array( $log ) ? $log : array(); $log[] = array( 'time' => gmdate( 'Y-m-d H:i:s' ), 'message' => (string) $message, 'context' => array_map( static function ( $v ) { return is_scalar( $v ) ? $v : wp_json_encode( $v ); }, $context ), ); update_option( self::OPTION, array_slice( $log, -self::MAX ), false ); } /** * Entries. * * @return array */ public static function entries() { $log = get_option( self::OPTION, array() ); return is_array( $log ) ? $log : array(); } /** * Clear. * * @return void */ public static function clear() { delete_option( self::OPTION ); } }