Hallo Sören,
vielen Dank für Dein Feedback.
ZitatDu solltest bei den Eigenschaften am Anfang schon Werte zuweisen, dann musst du dies nicht im Konstruktor tun
Ich wusste nicht daß es geht, ist aber einfacher.
Zitat
Die while-Schleife von CountWords lässt sich als for-Schleife bequemer lösen, damit ist sofort ersichtlich, wie die Schleife ausgeführt werden soll.
Meist Du es so?
<span class="syntaxdefault">for </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> strtok</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$text</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> $word </span><span class="syntaxkeyword">!=</span><span class="syntaxdefault"> false</span><span class="syntaxkeyword">;</span><span class="syntaxdefault"> $word</span><span class="syntaxkeyword">=</span><span class="syntaxdefault">strtok</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter</span><span class="syntaxkeyword">))</span><span class="syntaxdefault"> </span>
ZitatWas soll die Überprüfung im Konstruktor, ob $skip_words vorhanden ist, die Variable gibt es doch gar nicht?
Ja, wenn man zuviele Änderungen am Code vornimmt......
ZitatBeim HTML-Code ist noch viel zu verbessern: alles ist in einer Zeile und es werden veraltete Tags verwendet
Stimmt schon, in einer realen Seite kann man es CSS viel besser machen, aber hier ist es zur zum Testen..
ZitatIn einer Funktion sollte nichts ausgegeben werden, falls man die Daten hinterher vielleicht noch verarbeiten möchte. Daher solltest DisplayResult die Tabelle zurückgeben, statt sie auszugeben (auch wenn das auch noch nicht optimal ist)
Ja, hast recht, man sollte es besser trennen. Die Klasse kann eigentlich nicht wissen was mit den Daten geschieht. Ich habe die Funktion komplett rausgenommen und gebe nur das Array mit GetResults() zurück
Der neue Code:
wordcounter.php
<span class="syntaxdefault"><?php<br /></span><span class="syntaxcomment">/**<br />* Class Wordcounter<br />* <br />* @uthor: Starhunter<br />* <br />* @version: 1.1<br />* <br />*/<br /></span><span class="syntaxdefault">class WordCounter<br /></span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * @var string<br /> * @access protected<br /> */<br /></span><span class="syntaxdefault"> protected $delimiter </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">" ,\"\'!.:;?ú$%^&*()-\n\r"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * @var array<br /> * @access protected<br /> */<br /></span><span class="syntaxdefault"> protected $skip_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * @var array<br /> * @access protected<br /> */<br /></span><span class="syntaxdefault"> protected $search_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * @var array<br /> * @access protected<br /> */<br /></span><span class="syntaxdefault"> protected $words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * @var integer<br /> * @access protected<br /> */<br /></span><span class="syntaxdefault"> protected $num_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Constructs the class and sets the properties to default values<br /> * <br /> * @param string $delimiter Contains the characters that will be used to split the text into words.<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function __construct</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$delimiter</span><span class="syntaxkeyword">=</span><span class="syntaxstring">""</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$delimiter </span><span class="syntaxkeyword">!=</span><span class="syntaxdefault"> </span><span class="syntaxstring">""</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $delimiter</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Resets the class variables to their defaults with the exception of $delimiters<br /> *<br /> * @param none<br /> * <br /> * return none<br /> */<br /></span><span class="syntaxdefault"> public function Reset</span><span class="syntaxkeyword">()<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">num_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">skip_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">search_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Sets the words that should be excluded from the search<br /> * <br /> * @param array $skip_words Words that should not be counted.<br /> * <br /> * @return none<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function SetSkipWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$skip_words</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(!</span><span class="syntaxdefault"> is_array</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$skip_words</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> throw new Exception</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Parameter '$skipwords' must be an array"</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> <br /> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">skip_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $skip_words</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Only these words will be included in the search<br /> * <br /> * @param array $skip_words Sets the words that will be ccounted.<br /> * <br /> * @return none<br /> *<br /> */<br /></span><span class="syntaxdefault"> public function SetSearchWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$search_words</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(!</span><span class="syntaxdefault">is_array</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$search_words</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> throw new Exception</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Parameter '$search_words' must be an array"</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">search_words </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $search_words</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * <br /> * Sets the delimiter for the words<br /> * <br /> * @param string $delimiter The characters that will be used to seperate the words.<br /> * <br /> * @return none<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function SetDelimiter</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$delimiter</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $delimiter</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Extracts the individual words and counts their frequency.<br /> * <br /> * @param string $text The text with the words.<br /> * <br /> * @return none<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function CountWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$text</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> for </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> strtok</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$text</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> $word </span><span class="syntaxkeyword">!=</span><span class="syntaxdefault"> false</span><span class="syntaxkeyword">;</span><span class="syntaxdefault"> $word</span><span class="syntaxkeyword">=</span><span class="syntaxdefault">strtok</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">delimiter</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">num_words</span><span class="syntaxkeyword">++;<br /></span><span class="syntaxdefault"> $word </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> trim</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(!</span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">WordToBeIncluded</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> continue</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(isset(</span><span class="syntaxdefault">$this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">words</span><span class="syntaxkeyword">[</span><span class="syntaxstring">"$word"</span><span class="syntaxkeyword">]))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">words</span><span class="syntaxkeyword">[</span><span class="syntaxstring">"$word"</span><span class="syntaxkeyword">]++;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">words</span><span class="syntaxkeyword">[</span><span class="syntaxstring">"$word"</span><span class="syntaxkeyword">]</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 1</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Return the words and their count<br /> * <br /> * @param none<br /> * <br /> * @return array Returns an associate array with the words and their count.<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function GetResult</span><span class="syntaxkeyword">()<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> return $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">words</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * <br /> * Returns the Number of words counted<br /> * <br /> * return integer Number of words counted<br /> * <br /> */<br /></span><span class="syntaxdefault"> public function GetNumWords</span><span class="syntaxkeyword">()<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> return $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">num_words</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">/**<br /> * Decides if a word should be included in the results<br /> * <br /> * @param string $word Word to be checked<br /> * <br /> * @return bool Returns true if the word should be counted, otherwise false.<br /> * <br /> */<br /></span><span class="syntaxdefault"> protected function WordToBeIncluded</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> </span><span class="syntaxstring">""</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">||</span><span class="syntaxdefault"> in_array</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">skip_words</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> return false</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">count</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">search_words</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">></span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">in_array</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$word</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $this</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">search_words</span><span class="syntaxkeyword">))<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> return true</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> return false</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> return true</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br />}<br /></span><span class="syntaxdefault">?></span>
test.php
<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /><br /></span><span class="syntaxkeyword">require_once(</span><span class="syntaxstring">"wordcounter1.1.php"</span><span class="syntaxkeyword">);<br /><br /></span><span class="syntaxdefault">$names </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Anna, Astrid, Bettina, Lisa, Julia, Natascha, Astrid, Bettina, Kaisa,Anna,<br /> Lisa, Lisa, Kaisa,Anna"</span><span class="syntaxkeyword">;<br /><br /></span><span class="syntaxdefault">$wc </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> new WordCounter</span><span class="syntaxkeyword">();<br /><br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<h1 align=\"center\">Wordcounter test</h1>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<hr>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<h2>Alle Wörter zählen</h2>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">CountWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$names</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">DisplayResult</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">GetResult</span><span class="syntaxkeyword">());<br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<hr>"</span><span class="syntaxkeyword">;<br /><br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<h2>Bestimmte Wörter zählen</h2>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">Reset</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">SetSearchWords</span><span class="syntaxkeyword">(array(</span><span class="syntaxstring">"Anna"</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Lisa"</span><span class="syntaxkeyword">));<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">CountWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$names</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">DisplayResult</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">GetResult</span><span class="syntaxkeyword">());<br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<hr>"</span><span class="syntaxkeyword">;<br /><br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<h2>Alle Wörter bis auf Ausnahmen zählen</h2>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">Reset</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">SetSkipWords</span><span class="syntaxkeyword">(array(</span><span class="syntaxstring">"Anna"</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">"Lisa"</span><span class="syntaxkeyword">));<br /></span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">CountWords</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$names</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">DisplayResult</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">GetResult</span><span class="syntaxkeyword">());<br /><br /></span><span class="syntaxdefault">echo </span><span class="syntaxstring">"<hr>"</span><span class="syntaxkeyword">;<br /><br /><br /><br /></span><span class="syntaxdefault">function DisplayResult</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$words</span><span class="syntaxkeyword">)<br />{<br /></span><span class="syntaxdefault"> global $wc</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> <br /> arsort</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$words</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<table border=\"1\" cellpadding=\"7\" >"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<thead><tr><th>Wort</th><th>Anzahl</th><th>Häufigkeit</th></tr></thead>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<tbody>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> foreach </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$words as $key</span><span class="syntaxkeyword">=></span><span class="syntaxdefault">$value</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> $key </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> trim</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$key</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$key </span><span class="syntaxkeyword">==</span><span class="syntaxdefault"> </span><span class="syntaxstring">""</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> continue</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<tr>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<td>$key</td><td>$value</td><td>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> $percent </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $value </span><span class="syntaxkeyword">*</span><span class="syntaxdefault"> 100 </span><span class="syntaxkeyword">/</span><span class="syntaxdefault"> $wc</span><span class="syntaxkeyword">-></span><span class="syntaxdefault">GetNumWords</span><span class="syntaxkeyword">();<br /></span><span class="syntaxdefault"> $percent </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> number_format</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$percent</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> 2</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"$percent % </td>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"</tr>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"</tbody>"</span><span class="syntaxkeyword">;<br /><br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"</table>"</span><span class="syntaxkeyword">;<br />}<br /></span><span class="syntaxdefault">?><br /></span><br /></span>
Hallo R4ZzOR,
warum magst Du OOP nicht?