src/Router.php
final public function static_file(
		string $path, int $cache=0, $disposition=null
	) {
		self::$logger->info("Router: static: '$path'.");
		if (!method_exists($this, 'static_file_custom'))
			return $this->static_file_default($path, $cache,
				$disposition);
		return $this->static_file_custom($path, $cache, $disposition);
	}
final public function static_file(
		string $path, int $cache=0, $disposition=null
	) {
		self::$logger->info("Router: static: '$path'.");
		if (!method_exists($this, 'static_file_custom'))
			return $this->static_file_default($path, $cache,
				$disposition);
		return $this->static_file_custom($path, $cache, $disposition);
	}
final public function static_file ( string $ path , int $ cache = 0 , $ disposition = null ) { self :: $ logger -> info ( "Router: static: '$path'." ) ; if ( ! method_exists ( $ this , 'static_file_custom' ) ) return $ this -> static_file_default ( $ path , $ cache , $ disposition ) ; return $ this -> static_file_custom ( $ path , $ cache , $ disposition ) ; }
Static file.

Create method called static_file_custom() to customize this in
a subclass.

@param string $path Absolute path to file.
@param int $cache Cache age in seconds.
@param mixed $disposition If string, use it as
content-disposition in header. If true, infer from basename.
If null, no content-disposition header is sent.
Static file .