Sådan benyttes komponenten Reader klassen
Først skal du inkludere den fil der beskriver komponenten, som en klasse fil
<? require_once(HTML_PACKAGE_PATH.'/Reader.php'); ?>
Dernæst kan du enten benytte komponenten som et taglib (statiske metoder):
<? Reader::display($param1, $param2, $param3, ...); ?>
eller du kan lave en instance af komponenten og benytte metoderne direkte:
<? $object = new Reader($param1, $param2, $param3, ...); print $object->getHtml(); ?>
Sådan vises komponenten Reader klassen
Read the content of the specified filename and language
Use default filename, if no language found
Usage:
Read the content of the specified filename
Den fulde PHP kildekode for Reader klassen
<?php/** * @package base * @see HTML_BASE_COMMON_PATH.'/Reader.php' * @copyright (c) http://Finn-Rasmussen.com * @license http://Finn-Rasmussen.com/license/ myPHP License conditions * @author http://Finn-Rasmussen.com * @version 1.11 * @since 27-nov-2009 *//** * The required files */if (defined('HTML_LOG_UTIL_PATH')) { require_once(HTML_LOG_UTIL_PATH.'/Log.php');}/** * The Reader class used during reading files from the filesystem * <code> * Usage: * $reader = new Reader(); * $content = $reader->read(); * Or * $domainname = 'finn-rasmussen.com'; * $language = 'en'; * $filename = 'demo.html'; * $filepath = '.'; // Current directory * $content = Reader::read($domainname, $language, $filename, $filepath); * Or * $file = '/var/www/html/test.php'; * $content = Reader::content($file); * </code> * * @package base */class Reader { /** * Constructor */ function __construct() { } /** * Read the content of the specified filename and language * Use default filename, if no language found * <code> * Usage: * $domainname = 'finn-rasmussen.com'; * $language = 'en'; * $filename = 'demo.html'; * $filepath = '.'; // Current directory * $content = Reader::read($domainname, $language, $filename, $filepath); * </code> * @static * @param String $domainname The Domain Name to use * @param String $language The language to use * @param String $filename The filename to read * @param String $filepath The filepath to use * @return String The content or empty */ public static function read($domainname='', $language='', $filename='', $filepath='') { $html = ''; $fileUrl = ''; $isLocal = true; $theFile = Filename::calculate($domainname, $language, $filename, $filepath, $fileUrl, $isLocal); if ($theFile != '') { $html .= Reader::content($theFile); } else { if (defined('DEBUG_LEVEL_SHOW_INFO') && DEBUG_LEVEL & DEBUG_LEVEL_SHOW_INFO) { $msg = "Reader::read(filename,language,domainname) Not found filename=".$filename.($domainname != '' ? ' where domainname='.$domainname:'').($language != '' ? ' where language='.$language:''); if (defined('HTML_LOG_UTIL_PATH')) { //Log::debug($msg, __FILE__, __LINE__); } else { // Todo what ? } //$html .= '<!-- '.$msg." -->\r\n"; } } return $html; } /** * Read the content of the specified filename * <code> * Usage: * $filename = '/var/doc/root/www/dir/content.txt'; * $content = Reader::content($filename); * </code> * @static * @param String $filename The filename to read * @return String The content or empty */ public static function content($filename) { $html = ''; if (file_exists($filename)) { $contents = file_get_contents($filename); if ($contents==false) { $msg = 'Reader::content(), Not found, $filename='.$filename; if (defined('HTML_LOG_UTIL_PATH')) { Log::fatal($msg, __FILE__, __LINE__); } else { Message::add($msg, __FILE__, __LINE__); } $html .= $msg; } else { $html .= $contents; } } else { $msg = 'Reader::content(), File not found, $filename='.$filename; if (defined('HTML_LOG_UTIL_PATH')) { Log::fatal($msg, __FILE__, __LINE__); } else { Message::add($msg, __FILE__, __LINE__); } $html .= $msg; } return $html; } /** * Returns the html for the element * @sample * @return String The complete html */ function getHtml() { $html = "<h1>Reader.php</h2>\r\n"; $html .= "<p>Read the content of the specified filename and language\r\n"; $html .= "<p>Use default filename, if no language found\r\n"; $html .= "<p>Usage:</p>\r\n"; $html .= "<ul>\r\n"; $html .= '<li>$domainname = "finn-rasmussen.com";</li>'."\r\n"; $html .= '<li>$language = "en";</li>'."\r\n"; $html .= '<li>$filename = "demo.html";</li>'."\r\n"; $html .= '<li>$filepath = ".";</li>'."\r\n"; $html .= '<li>$content = Reader::read($domainname, $language, $filename, $filepath);</li>'."\r\n"; $html .= "</ul>\r\n"; $html .= "<p>Read the content of the specified filename</p>\r\n"; $html .= "<p>Usage:</p>\r\n"; $html .= "<ul>\r\n"; $html .= '<li>$filename = "/var/doc/root/www/dir/content.txt";</li>'."\r\n"; $html .= '<li>$content = Reader::content($filename);</li>'."\r\n"; $html .= "</ul>\r\n"; return $html; }}?>
Den fulde HTML kildekode for Reader klassen
<? <h1>Reader.php</h2> <p>Read the content of the specified filename and language <p>Use default filename, if no language found <p>Usage:</p> <ul> <li>$domainname = "finn-rasmussen.com";</li> <li>$language = "en";</li> <li>$filename = "demo.html";</li> <li>$filepath = ".";</li> <li>$content = Reader::read($domainname, $language, $filename, $filepath);</li> </ul> <p>Read the content of the specified filename</p> <p>Usage:</p> <ul> <li>$filename = "/var/doc/root/www/dir/content.txt";</li> <li>$content = Reader::content($filename);</li> </ul> ?>
Her er 'klasse metoderne' for Reader klassen:
Her er 'objekt variable' for Reader klassen: