<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Kommentare für PHP Performance</title>
	<atom:link href="http://phpperformance.de/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://phpperformance.de</link>
	<description>Optimierung und Tipps zur Beschleunigung von PHP und MySQL</description>
	<lastBuildDate>Tue, 26 Mar 2013 10:37:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>Kommentar zu Volltextsuche in MySQL-Datenbanken von Robert</title>
		<link>http://phpperformance.de/volltextsuche-in-datenbanken/comment-page-1/#comment-114519</link>
		<dc:creator>Robert</dc:creator>
		<pubDate>Tue, 26 Mar 2013 10:37:00 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/?p=380#comment-114519</guid>
		<description><![CDATA[@Adrian: 
Du findest den Artikel mit Code auf phpbar.de hier:
http://www.phpbar.de/w/Volltextsuche

Weiterhin findest Du interessante Links zur Volltextsuche z.B. mit dem wesentlich leistungsfaehigeren Tsearch2 - full text extension for PostgreSQL hier:
http://www.linkmatrix.eu/search/q/volltextsuche
Happy coding!]]></description>
		<content:encoded><![CDATA[<p>@Adrian:<br />
Du findest den Artikel mit Code auf phpbar.de hier:<br />
<a href="http://www.phpbar.de/w/Volltextsuche" rel="nofollow">http://www.phpbar.de/w/Volltextsuche</a></p>
<p>Weiterhin findest Du interessante Links zur Volltextsuche z.B. mit dem wesentlich leistungsfaehigeren Tsearch2 &#8211; full text extension for PostgreSQL hier:<br />
<a href="http://www.linkmatrix.eu/search/q/volltextsuche" rel="nofollow">http://www.linkmatrix.eu/search/q/volltextsuche</a><br />
Happy coding!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Volltextsuche in MySQL-Datenbanken von Adrian</title>
		<link>http://phpperformance.de/volltextsuche-in-datenbanken/comment-page-1/#comment-114321</link>
		<dc:creator>Adrian</dc:creator>
		<pubDate>Tue, 26 Mar 2013 00:51:21 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/?p=380#comment-114321</guid>
		<description><![CDATA[Schade dass bei der letzen und interesanntesten Variante kein Code mitgeliefert wird, bzw. zur Interesannten Seite verlinkt wird. phpbar.de ist gross, wo genau finde ich denn den jeweiligen Artikel bzw. die erl&#228;uterung?]]></description>
		<content:encoded><![CDATA[<p>Schade dass bei der letzen und interesanntesten Variante kein Code mitgeliefert wird, bzw. zur Interesannten Seite verlinkt wird. phpbar.de ist gross, wo genau finde ich denn den jeweiligen Artikel bzw. die erl&#228;uterung?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Ausgabefunktionen &#8211; echo vs print vs printf von NB</title>
		<link>http://phpperformance.de/ausgabefunktionen-echo-vs-print-vs-printf/comment-page-1/#comment-111147</link>
		<dc:creator>NB</dc:creator>
		<pubDate>Mon, 18 Mar 2013 09:52:58 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/ausgabefunktionen-echo-vs-print-vs-printf/#comment-111147</guid>
		<description><![CDATA[echo &quot;bla&quot; , print_r($r=array(&#039;foo&#039;),true) , &quot;blub&quot;;

das kann print nicht. Also &quot;Synonyme&quot; n&#246;!]]></description>
		<content:encoded><![CDATA[<p>echo &#034;bla&#034; , print_r($r=array(&#039;foo&#039;),true) , &#034;blub&#034;;</p>
<p>das kann print nicht. Also &#034;Synonyme&#034; n&#246;!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Hierarchische Strukturen und B&#228;ume in MySQL (Rekursion) von Messa</title>
		<link>http://phpperformance.de/hierarchische-strukturen-und-baeume-in-mysql-rekursion/comment-page-1/#comment-100786</link>
		<dc:creator>Messa</dc:creator>
		<pubDate>Thu, 17 Jan 2013 09:34:53 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/hierarchische-strukturen-und-baeume-in-mysql-rekursion/#comment-100786</guid>
		<description><![CDATA[Genau das was ich suche, aber klappt irgendwie nicht.
Habe in meiner DB das so:
id-----pid------name

1------0--------name1
2------0--------name2
3------3--------name3
4------3--------name4
5------0--------name5

Habe die tabele und die ID und parentID gegen meine ausgetauscht.]]></description>
		<content:encoded><![CDATA[<p>Genau das was ich suche, aber klappt irgendwie nicht.<br />
Habe in meiner DB das so:<br />
id&#8212;&#8211;pid&#8212;&#8212;name</p>
<p>1&#8212;&#8212;0&#8212;&#8212;&#8211;name1<br />
2&#8212;&#8212;0&#8212;&#8212;&#8211;name2<br />
3&#8212;&#8212;3&#8212;&#8212;&#8211;name3<br />
4&#8212;&#8212;3&#8212;&#8212;&#8211;name4<br />
5&#8212;&#8212;0&#8212;&#8212;&#8211;name5</p>
<p>Habe die tabele und die ID und parentID gegen meine ausgetauscht.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Wie erstelle ich eine HTML-Liste aus einem Nested-Set? von arabeske</title>
		<link>http://phpperformance.de/wie-erstelle-ich-eine-html-liste-aus-einem-nested-set/comment-page-1/#comment-99683</link>
		<dc:creator>arabeske</dc:creator>
		<pubDate>Thu, 10 Jan 2013 23:39:32 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/wie-erstelle-ich-eine-html-liste-aus-einem-nested-set/#comment-99683</guid>
		<description><![CDATA[hier das Ganze mal als smarty script:

{assign var=&quot;level&quot; value=&#039;0&#039;}
{assign var=&quot;diff&quot; value=&#039;0&#039;}
{foreach from=$list item=row name=&#039;c&#039;}
{if $row.depth &lt; $level}
{math equation=&#039;l - d&#039; l=$level d=$row.depth assign=diff} 

{&quot;&quot;&#124;str_repeat:$diff}         
{/if}
{if $row.depth &gt; $level}  {/if}
{if $row.depth == $level} {/if}

{$row.username}
{if $row.depth  &lt; $level}  {/if}
{*$level = $row.depth*}
{assign var=level value=$row.depth}
{/foreach}
{if $level &gt; 0} {&quot;&quot;&#124;str_repeat:$level} {/if}
]]></description>
		<content:encoded><![CDATA[<p>hier das Ganze mal als smarty script:</p>
<p>{assign var=&#034;level&#034; value=&#039;0&#039;}<br />
{assign var=&#034;diff&#034; value=&#039;0&#039;}<br />
{foreach from=$list item=row name=&#039;c'}<br />
{if $row.depth &lt; $level}<br />
{math equation=&#039;l &#8211; d&#039; l=$level d=$row.depth assign=diff} </p>
<p>{&#034;&#034;|str_repeat:$diff}<br />
{/if}<br />
{if $row.depth &gt; $level}  {/if}<br />
{if $row.depth == $level} {/if}</p>
<p>{$row.username}<br />
{if $row.depth  &lt; $level}  {/if}<br />
{*$level = $row.depth*}<br />
{assign var=level value=$row.depth}<br />
{/foreach}<br />
{if $level &gt; 0} {&#034;&#034;|str_repeat:$level} {/if}</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Einen Datensatz aus einem Result-Set laden von Michael Sattler</title>
		<link>http://phpperformance.de/einen-datensatz-aus-einem-result-set-laden/comment-page-1/#comment-98940</link>
		<dc:creator>Michael Sattler</dc:creator>
		<pubDate>Sun, 06 Jan 2013 19:22:19 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/einen-datensatz-aus-einem-result-set-laden/#comment-98940</guid>
		<description><![CDATA[Bez&#252;glich mysql_result() haben meine Messungen folgendes ergeben:

Bei Abfragen, die nur eine Zeile enthalten (was nicht selten vorkommt), ist mysql_result ca. 20-30% schneller als mysql_fetch_row!

Vorausgesetzt, es gibt nur eine Spalte:
$feld = mysql_result($abfrage,0)

oder (bei mehreren Spalten) einen numerischen Offset:
$feld = mysql_result($abfrage,0,5)

Dagegen macht die Angabe eines Spaltennamens den Vorteil wieder zunichte:
$feld = mysql_result($abfrage,0,&#039;spalte&#039;)


Da mysql_result im Vergleich zu mysql_fetch_* zudem eine PHP-Zeile einspart, verwende ich es immer bei Abfragen von Einzelwerten (eine Spalte in einer Zeile).]]></description>
		<content:encoded><![CDATA[<p>Bez&#252;glich mysql_result() haben meine Messungen folgendes ergeben:</p>
<p>Bei Abfragen, die nur eine Zeile enthalten (was nicht selten vorkommt), ist mysql_result ca. 20-30% schneller als mysql_fetch_row!</p>
<p>Vorausgesetzt, es gibt nur eine Spalte:<br />
$feld = mysql_result($abfrage,0)</p>
<p>oder (bei mehreren Spalten) einen numerischen Offset:<br />
$feld = mysql_result($abfrage,0,5)</p>
<p>Dagegen macht die Angabe eines Spaltennamens den Vorteil wieder zunichte:<br />
$feld = mysql_result($abfrage,0,&#039;spalte&#039;)</p>
<p>Da mysql_result im Vergleich zu mysql_fetch_* zudem eine PHP-Zeile einspart, verwende ich es immer bei Abfragen von Einzelwerten (eine Spalte in einer Zeile).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Ausgabefunktionen &#8211; echo vs print vs printf von Beweis</title>
		<link>http://phpperformance.de/ausgabefunktionen-echo-vs-print-vs-printf/comment-page-1/#comment-96508</link>
		<dc:creator>Beweis</dc:creator>
		<pubDate>Sat, 22 Dec 2012 22:31:55 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/ausgabefunktionen-echo-vs-print-vs-printf/#comment-96508</guid>
		<description><![CDATA[-- ECHO --

0.04991602897644
0.047633171081543
0.048943996429443
0.046703100204468

-- PRINTF --

0.1017689704895
0.11129188537598
0.11049604415894
0.12095499038696]]></description>
		<content:encoded><![CDATA[<p>&#8211; ECHO &#8211;</p>
<p>0.04991602897644<br />
0.047633171081543<br />
0.048943996429443<br />
0.046703100204468</p>
<p>&#8211; PRINTF &#8211;</p>
<p>0.1017689704895<br />
0.11129188537598<br />
0.11049604415894<br />
0.12095499038696</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Funktionen oder iterative Programmierung? von David</title>
		<link>http://phpperformance.de/funktionen-oder-iterative-programmierung/comment-page-1/#comment-90379</link>
		<dc:creator>David</dc:creator>
		<pubDate>Sat, 24 Nov 2012 17:03:27 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/kein-doppelter-code/#comment-90379</guid>
		<description><![CDATA[Die Notation &quot;&quot; schr&#228;nkt schon so stark ein, da&#223; man nur X(HT)ML verwenden kann, eleganter l&#228;&#223;t sich das mit &quot;nl2br(PHP_EOL,$is_xhtml)&quot; l&#246;sen.
Allerdings zeigt die Inline-Notation von XHTML ein ganz anderes Problem auf, das schon bei Projekten sehr geringer Gr&#246;&#223;e Bedeutsamkeit erreicht:
1) Daten m&#252;&#223;en gepr&#252;ft, abgeglichen und formatiert werden.
2) S&#228;mtliche Datenzugriffe, -Manipulationen und -Pr&#252;fungen sollten nach M&#246;glichkeit nur an einer Stelle erfolgen, daher sind einzeln notierte Funktionen oder Klassen notwendig. Nur so kann (ggf. neben Konstanten)sichergestellt werden, da&#223; die Ergebnisse von Berechnungen gleich und Kompatibel sind. Der Wartungsaufwand f&#252;r Projekte steigt unverh&#228;ltnism&#228;&#223;ig, wenn die gleiche Funktionalit&#228;t jeweils an mehreren Stellen angepasst werden mu&#223;.

Dar&#252;ber hinaussollte das eigentliche Interesse einer anderen Entscheidung zukommen:
Werden Schleifen iterativ oder rekursiv bearbeitet?
Beide M&#246;glichkeiten k&#246;nnen interne Funktionsaufrufe beinhalten um Daten zu erhalten, dennoch gibt es meines Wissens im Hinblick auf Speicherverbrauch Unterschiede.
Die rekursive L&#246;sung ist meistens etwas &#252;bersichtlicher, daf&#252;r sind iterative L&#246;sungen im Speicherverbrauch sparsamer.
Diese Entscheidung steht immer dann an, wenn ein Schritt mehrmals ausgef&#252;hrt werden muss, und dies ist fast IMMER der Fall, auch in OOP!

Sicherlich ist das Benchmarking im oben genannten Beispiel interessant und sollte zumindest darauf hinweisen, da&#223; eine zu starke Aufteilung in unterschiedliche Funktionen kontraproduktiv sein kann, jedoch sollte NICHT darauf geschlossen werden, da&#223; alle Skripts nun an einem St&#252;ck notiert werden sollten.]]></description>
		<content:encoded><![CDATA[<p>Die Notation &#034;&#034; schr&#228;nkt schon so stark ein, da&#223; man nur X(HT)ML verwenden kann, eleganter l&#228;&#223;t sich das mit &#034;nl2br(PHP_EOL,$is_xhtml)&#034; l&#246;sen.<br />
Allerdings zeigt die Inline-Notation von XHTML ein ganz anderes Problem auf, das schon bei Projekten sehr geringer Gr&#246;&#223;e Bedeutsamkeit erreicht:<br />
1) Daten m&#252;&#223;en gepr&#252;ft, abgeglichen und formatiert werden.<br />
2) S&#228;mtliche Datenzugriffe, -Manipulationen und -Pr&#252;fungen sollten nach M&#246;glichkeit nur an einer Stelle erfolgen, daher sind einzeln notierte Funktionen oder Klassen notwendig. Nur so kann (ggf. neben Konstanten)sichergestellt werden, da&#223; die Ergebnisse von Berechnungen gleich und Kompatibel sind. Der Wartungsaufwand f&#252;r Projekte steigt unverh&#228;ltnism&#228;&#223;ig, wenn die gleiche Funktionalit&#228;t jeweils an mehreren Stellen angepasst werden mu&#223;.</p>
<p>Dar&#252;ber hinaussollte das eigentliche Interesse einer anderen Entscheidung zukommen:<br />
Werden Schleifen iterativ oder rekursiv bearbeitet?<br />
Beide M&#246;glichkeiten k&#246;nnen interne Funktionsaufrufe beinhalten um Daten zu erhalten, dennoch gibt es meines Wissens im Hinblick auf Speicherverbrauch Unterschiede.<br />
Die rekursive L&#246;sung ist meistens etwas &#252;bersichtlicher, daf&#252;r sind iterative L&#246;sungen im Speicherverbrauch sparsamer.<br />
Diese Entscheidung steht immer dann an, wenn ein Schritt mehrmals ausgef&#252;hrt werden muss, und dies ist fast IMMER der Fall, auch in OOP!</p>
<p>Sicherlich ist das Benchmarking im oben genannten Beispiel interessant und sollte zumindest darauf hinweisen, da&#223; eine zu starke Aufteilung in unterschiedliche Funktionen kontraproduktiv sein kann, jedoch sollte NICHT darauf geschlossen werden, da&#223; alle Skripts nun an einem St&#252;ck notiert werden sollten.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Performance-Probleme beim Rendering von Hintergrundbildern im IE von Dylan</title>
		<link>http://phpperformance.de/performance-probleme-beim-rendering-von-hintergrundbildern-im-ie/comment-page-1/#comment-82153</link>
		<dc:creator>Dylan</dc:creator>
		<pubDate>Mon, 29 Oct 2012 13:22:41 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/?p=1167#comment-82153</guid>
		<description><![CDATA[Super Beitrag. Hatte &#228;hnliche Probleme mit dem m&#252;hsamen IE.]]></description>
		<content:encoded><![CDATA[<p>Super Beitrag. Hatte &#228;hnliche Probleme mit dem m&#252;hsamen IE.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kommentar zu Nested Sets &#8211; Hierarchische Strukturen und B&#228;ume in MySQL von Martin Kiesewetter</title>
		<link>http://phpperformance.de/nested-sets-hierarchische-strukturen-und-baeume-in-mysql/comment-page-2/#comment-80904</link>
		<dc:creator>Martin Kiesewetter</dc:creator>
		<pubDate>Tue, 23 Oct 2012 14:44:25 +0000</pubDate>
		<guid isPermaLink="false">http://phpperformance.de/nested-sets-hierarchische-strukturen-und-baeume-in-mysql/#comment-80904</guid>
		<description><![CDATA[HI,

(ich glaub) du hast einen schwerwiegenden Fehler beim L&#246;schen eines Knotens, wobei die Kinder nachrutschen...

mit dem Statement:
DELETE FROM kategorien WHERE lft BETWEEN $LFT AND $RGT;
l&#246;scht du den ganzen Unterbaum und versuchst anschlie&#223;end die Knoten des Unterbaums zu &quot;verschieben&quot;

Viele Gr&#252;&#223;e]]></description>
		<content:encoded><![CDATA[<p>HI,</p>
<p>(ich glaub) du hast einen schwerwiegenden Fehler beim L&#246;schen eines Knotens, wobei die Kinder nachrutschen&#8230;</p>
<p>mit dem Statement:<br />
DELETE FROM kategorien WHERE lft BETWEEN $LFT AND $RGT;<br />
l&#246;scht du den ganzen Unterbaum und versuchst anschlie&#223;end die Knoten des Unterbaums zu &#034;verschieben&#034;</p>
<p>Viele Gr&#252;&#223;e</p>
]]></content:encoded>
	</item>
</channel>
</rss>
