<?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>Comments for Valles Blog</title>
	<atom:link href="http://www.valentinvoigt.info/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.valentinvoigt.info</link>
	<description>Über das Leben eines Freaks...</description>
	<lastBuildDate>Sat, 20 Feb 2010 20:14:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Moderne Routing-Verfahren in PHP-Apps by Pascal</title>
		<link>http://www.valentinvoigt.info/2010/02/moderne-routing-verfahren-in-php-apps/comment-page-1/#comment-81</link>
		<dc:creator>Pascal</dc:creator>
		<pubDate>Sat, 20 Feb 2010 20:14:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=194#comment-81</guid>
		<description>ich kenn mich leider nicht so ganz mit den preg-funktionen aus, aber kann man die expressions von python frameworks wie django/web.py/tornado etc. direkt in php verwenden? mit dem ?P.  kam mir so grad die Frage, weil php ja nicht explizit bestimmte Parameter übergeben kann wie in python (fn(x=123,b=456,c=&#039;abc&#039;) bei fn(b,c,a) beispielsweise)

Für meinen Teil muss ich sagen, dass die Funktion mit dem expliziten Mappen mir deutlich mehr liegt bzw. ich sie schöner finde, da sie an einem Punkt definiert, was logisch und was technisch eine Komponente ist und nicht dies durch eine rein technische Angelegenheit definiert ist. Auch hat man damit nicht das Problem, dass unter /klasse1/funktion1/ automatisch eine Klasse klasse1 zur Verfügung steht, die vielleicht gar nicht öffentlich sein soll

Das implizierte Mappen hat natürlich für&#039;s schnell aufbauen einer Seite meist einen Vorteil, sofern man nach dem Unix-Grundsatz handelt, dass ein Programm (und damit eine Klasse/Funktion/Datei) nur eine Funktion hat und daher seperat zu betrachten ist, dass man bei der Methode nicht extra die Konfiguration immer schreiben/ändern muss

Wenn man natürlich im Vorraus bereits festlegt, was wohin zeigen soll, ist das ganze auch wieder eine praktische Hilfe, da man weiß, was noch eingebaut werden muss und wie es gehen soll


Aber mal von dem Mappen weg: PHP ist schon eine schöne Sprache, wird nur leider von vielen vergewaltigt und in Richtung Performance und Umfang auf Rücksicht dieser ja leider nicht so stark fortentwickelt. Dennoch hat sie Funktionen wie private, vererbbare und statische Eigenschaften im OOP-Bereich, die beispielsweise wiederum python nicht kennt</description>
		<content:encoded><![CDATA[<p>ich kenn mich leider nicht so ganz mit den preg-funktionen aus, aber kann man die expressions von python frameworks wie django/web.py/tornado etc. direkt in php verwenden? mit dem ?P.  kam mir so grad die Frage, weil php ja nicht explizit bestimmte Parameter übergeben kann wie in python (fn(x=123,b=456,c=&#8217;abc&#8217;) bei fn(b,c,a) beispielsweise)</p>
<p>Für meinen Teil muss ich sagen, dass die Funktion mit dem expliziten Mappen mir deutlich mehr liegt bzw. ich sie schöner finde, da sie an einem Punkt definiert, was logisch und was technisch eine Komponente ist und nicht dies durch eine rein technische Angelegenheit definiert ist. Auch hat man damit nicht das Problem, dass unter /klasse1/funktion1/ automatisch eine Klasse klasse1 zur Verfügung steht, die vielleicht gar nicht öffentlich sein soll</p>
<p>Das implizierte Mappen hat natürlich für&#8217;s schnell aufbauen einer Seite meist einen Vorteil, sofern man nach dem Unix-Grundsatz handelt, dass ein Programm (und damit eine Klasse/Funktion/Datei) nur eine Funktion hat und daher seperat zu betrachten ist, dass man bei der Methode nicht extra die Konfiguration immer schreiben/ändern muss</p>
<p>Wenn man natürlich im Vorraus bereits festlegt, was wohin zeigen soll, ist das ganze auch wieder eine praktische Hilfe, da man weiß, was noch eingebaut werden muss und wie es gehen soll</p>
<p>Aber mal von dem Mappen weg: PHP ist schon eine schöne Sprache, wird nur leider von vielen vergewaltigt und in Richtung Performance und Umfang auf Rücksicht dieser ja leider nicht so stark fortentwickelt. Dennoch hat sie Funktionen wie private, vererbbare und statische Eigenschaften im OOP-Bereich, die beispielsweise wiederum python nicht kennt</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Moderne Routing-Verfahren in PHP-Apps by Valle</title>
		<link>http://www.valentinvoigt.info/2010/02/moderne-routing-verfahren-in-php-apps/comment-page-1/#comment-80</link>
		<dc:creator>Valle</dc:creator>
		<pubDate>Sat, 20 Feb 2010 18:48:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=194#comment-80</guid>
		<description>Die Frage ist ja, als was es moderner ist. Moderner als das implizite Routing wie bei Ruby muss es nicht sein. Aber moderner, als das Verfahren, welches mein Kumpel verwendet hat auf jeden Fall. Ich erinner mich auch noch an meine Versuche mit: include($_GET[&#039;page&#039;]); ;-)</description>
		<content:encoded><![CDATA[<p>Die Frage ist ja, als was es moderner ist. Moderner als das implizite Routing wie bei Ruby muss es nicht sein. Aber moderner, als das Verfahren, welches mein Kumpel verwendet hat auf jeden Fall. Ich erinner mich auch noch an meine Versuche mit: include($_GET['page']); <img src='http://www.valentinvoigt.info/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Moderne Routing-Verfahren in PHP-Apps by massai</title>
		<link>http://www.valentinvoigt.info/2010/02/moderne-routing-verfahren-in-php-apps/comment-page-1/#comment-79</link>
		<dc:creator>massai</dc:creator>
		<pubDate>Sat, 20 Feb 2010 18:43:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=194#comment-79</guid>
		<description>Stichwort ist das &quot;explizite&quot; Routing im Gegensatz zu dem &quot;impliziten&quot;, wie z.B. standardmäßig von Ruby on Rails verwendet. Dort regelt halt die Konvention, zu welchem Controller gemappt wird. 

Ergo: Ich bin mir nicht sicher ob das &quot;moderner&quot; ist, es ist auf jeden Fall hochkonfigurierbar und eigentlich sollte dieses Feature immer eine Option sein. (Bei Ruby on Rails ist es optional.)</description>
		<content:encoded><![CDATA[<p>Stichwort ist das &#8220;explizite&#8221; Routing im Gegensatz zu dem &#8220;impliziten&#8221;, wie z.B. standardmäßig von Ruby on Rails verwendet. Dort regelt halt die Konvention, zu welchem Controller gemappt wird. </p>
<p>Ergo: Ich bin mir nicht sicher ob das &#8220;moderner&#8221; ist, es ist auf jeden Fall hochkonfigurierbar und eigentlich sollte dieses Feature immer eine Option sein. (Bei Ruby on Rails ist es optional.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Sebastian</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-78</link>
		<dc:creator>Sebastian</dc:creator>
		<pubDate>Sat, 13 Feb 2010 02:27:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-78</guid>
		<description>ok, jetzt ohne PHP Zeichen:

function create_seo_url($url) {

	/* Schritt 1: Kleinbuchstaben */
	$url = mb_strtolower($url,&quot;UTF-8&quot;);
	
	/* Schritt 2: Ausgewählte Zeichen ersetzen */
	$search  = array (&#039;ä&#039;, &#039;ö&#039;, &#039;ü&#039;, &#039;ß&#039;, &#039;&amp;&#039;);
	$replace = array (&#039;ae&#039;, &#039;oe&#039;, &#039;ue&#039;, &#039;ss&#039;, &#039;und&#039;);
    
	$url = str_replace($search, $replace, $url);
	
	/* Schritt 3: Alles andere entfernen */
	$url = str_replace(&#039; &#039;, &#039;-&#039;, preg_replace(&quot;/[^a-z0-9 ]/&quot;, &quot;&quot;, $url));
    
	/* Schritt 4: Leerzeichen (d.h. &#039;-&#039;) am Anfang und am Ende entfernen sowie String ausgeben*/
    return trim($url, &#039;-&#039;);
  }</description>
		<content:encoded><![CDATA[<p>ok, jetzt ohne PHP Zeichen:</p>
<p>function create_seo_url($url) {</p>
<p>	/* Schritt 1: Kleinbuchstaben */<br />
	$url = mb_strtolower($url,&#8221;UTF-8&#8243;);</p>
<p>	/* Schritt 2: Ausgewählte Zeichen ersetzen */<br />
	$search  = array (&#8216;ä&#8217;, &#8216;ö&#8217;, &#8216;ü&#8217;, &#8216;ß&#8217;, &#8216;&amp;&#8217;);<br />
	$replace = array (&#8216;ae&#8217;, &#8216;oe&#8217;, &#8216;ue&#8217;, &#8217;ss&#8217;, &#8216;und&#8217;);</p>
<p>	$url = str_replace($search, $replace, $url);</p>
<p>	/* Schritt 3: Alles andere entfernen */<br />
	$url = str_replace(&#8216; &#8216;, &#8216;-&#8217;, preg_replace(&#8220;/[^a-z0-9 ]/&#8221;, &#8220;&#8221;, $url));</p>
<p>	/* Schritt 4: Leerzeichen (d.h. &#8216;-&#8217;) am Anfang und am Ende entfernen sowie String ausgeben*/<br />
    return trim($url, &#8216;-&#8217;);<br />
  }</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Sebastian</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-77</link>
		<dc:creator>Sebastian</dc:creator>
		<pubDate>Sat, 13 Feb 2010 02:26:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-77</guid>
		<description>Ups, hier noch der Code:

</description>
		<content:encoded><![CDATA[<p>Ups, hier noch der Code:</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Sebastian</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-76</link>
		<dc:creator>Sebastian</dc:creator>
		<pubDate>Sat, 13 Feb 2010 02:25:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-76</guid>
		<description>

Ich finds doof, wenn ich alle großen in kleine Buchstaben umwandele bevor ich mich um die Umlaute kümmere. Bei manchen Servern macht strtolower Probleme und zerschießt dann die Umlaute. Hab es jetzt zwar trotzdem vorher gemacht, nutze dafür aber mb_strtolower.</description>
		<content:encoded><![CDATA[<p>Ich finds doof, wenn ich alle großen in kleine Buchstaben umwandele bevor ich mich um die Umlaute kümmere. Bei manchen Servern macht strtolower Probleme und zerschießt dann die Umlaute. Hab es jetzt zwar trotzdem vorher gemacht, nutze dafür aber mb_strtolower.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Valle</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-75</link>
		<dc:creator>Valle</dc:creator>
		<pubDate>Fri, 12 Feb 2010 16:32:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-75</guid>
		<description>Was genau meinst du mit &lt;em&gt;&quot;d.h. mit nur einem Schleifendurchlauf. &quot;&lt;/em&gt;? Welche Schleife wird denn zu oft ausgeführt? Die Schleife zum Beseitigen doppelter Leerzeichen wird immer nur ein mal &quot;zu viel&quot; ausgeführt. Und dieses eine Mal ist sowieso notwendig, da man ja prüfen muss, ob noch doppelte Leerzeichen da sind.

Meinen Code optimiere ich vorzüglich Richtung Lesbarkeit, dass ist auch Empfehlung von Zend. Ich bin der Meinung, dass der Code relativ gut lesbar ist. Monster wie Reguläre Ausdrücke versuche ich dennoch zu vermeiden, da diese schon sehr starke Performance-Einbußen zu verzeichnen haben. Weiterhin bin ich auch der Meinung, dass diese nicht wirklich gut lesbar sind. Mein Ersatz-Code für die RegEx ist logisch aufgebaut und verwendet sprechende Bezeichner. Mit dem zugehörigen Kommentar sollte sofort alles klar sein. :-)</description>
		<content:encoded><![CDATA[<p>Was genau meinst du mit <em>&#8220;d.h. mit nur einem Schleifendurchlauf. &#8220;</em>? Welche Schleife wird denn zu oft ausgeführt? Die Schleife zum Beseitigen doppelter Leerzeichen wird immer nur ein mal &#8220;zu viel&#8221; ausgeführt. Und dieses eine Mal ist sowieso notwendig, da man ja prüfen muss, ob noch doppelte Leerzeichen da sind.</p>
<p>Meinen Code optimiere ich vorzüglich Richtung Lesbarkeit, dass ist auch Empfehlung von Zend. Ich bin der Meinung, dass der Code relativ gut lesbar ist. Monster wie Reguläre Ausdrücke versuche ich dennoch zu vermeiden, da diese schon sehr starke Performance-Einbußen zu verzeichnen haben. Weiterhin bin ich auch der Meinung, dass diese nicht wirklich gut lesbar sind. Mein Ersatz-Code für die RegEx ist logisch aufgebaut und verwendet sprechende Bezeichner. Mit dem zugehörigen Kommentar sollte sofort alles klar sein. <img src='http://www.valentinvoigt.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by R2C2</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-74</link>
		<dc:creator>R2C2</dc:creator>
		<pubDate>Fri, 12 Feb 2010 16:26:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-74</guid>
		<description>Wenn du die Performance optimieren willst, dann aber richtig d.h. mit nur einem Schleifendurchlauf. Ansonsten würde ich eher die Lesbarkeit optimieren. Gut, man kann jetzt argumentieren, dass RegEx auch nicht besonders lesbar ist, aber das kommt auf das RegEx-Wissen an. Und in dem Fall ist das ja noch sehr einfach...

Mein Favorit wäre also die RegEx-Methode (mit getauschter Reihenfolge).

mfg

Christian</description>
		<content:encoded><![CDATA[<p>Wenn du die Performance optimieren willst, dann aber richtig d.h. mit nur einem Schleifendurchlauf. Ansonsten würde ich eher die Lesbarkeit optimieren. Gut, man kann jetzt argumentieren, dass RegEx auch nicht besonders lesbar ist, aber das kommt auf das RegEx-Wissen an. Und in dem Fall ist das ja noch sehr einfach&#8230;</p>
<p>Mein Favorit wäre also die RegEx-Methode (mit getauschter Reihenfolge).</p>
<p>mfg</p>
<p>Christian</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Valle</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-73</link>
		<dc:creator>Valle</dc:creator>
		<pubDate>Fri, 12 Feb 2010 12:38:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-73</guid>
		<description>Die Code-Optimierung über die Search-And-Replace Arrays ist eine gute Idee, evtl. baue ich das auch noch ein. Etwas unnötig ist die Tatsache, dass du große und kleine Umlaute ersetzt. Wenn du erst strtolower benutzt, dann sparst du dir das. Auf Reguläre Ausdrücke habe ich zu gunsten der Performance verzichtet. Wenn ich Lust und Zeit habe, kann ich ja mal ein Benchmark dazu machen. :-)</description>
		<content:encoded><![CDATA[<p>Die Code-Optimierung über die Search-And-Replace Arrays ist eine gute Idee, evtl. baue ich das auch noch ein. Etwas unnötig ist die Tatsache, dass du große und kleine Umlaute ersetzt. Wenn du erst strtolower benutzt, dann sparst du dir das. Auf Reguläre Ausdrücke habe ich zu gunsten der Performance verzichtet. Wenn ich Lust und Zeit habe, kann ich ja mal ein Benchmark dazu machen. <img src='http://www.valentinvoigt.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Bastelstunde: Schöne URLs by Sebastian</title>
		<link>http://www.valentinvoigt.info/2010/02/bastelstunde-schone-urls/comment-page-1/#comment-72</link>
		<dc:creator>Sebastian</dc:creator>
		<pubDate>Fri, 12 Feb 2010 00:20:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.valentinvoigt.info/?p=185#comment-72</guid>
		<description>function create_seo_url($data){

           $search  = array (&#039;ä&#039;, &#039;ö&#039;, &#039;ü&#039;, &#039;Ä&#039;, &#039;Ö&#039;, &#039;Ü&#039;, &#039;ß&#039;, &#039;&amp;&#039;);
           $replace = array (&#039;ae&#039;, &#039;oe&#039;, &#039;ue&#039;, &#039;Ae&#039;, &#039;Oe&#039;, &#039;Ue&#039;, &#039;ss&#039;, &#039;und&#039;);
           $str  = str_replace($search, $replace, $data); // Tauscht Umlaute und Sonderzeichen aus
           $str = strtolower($str);     // wandelt alles zu Kleinbuchstaben um

    $url=str_replace(&#039; &#039;, &#039;-&#039;,preg_replace(&quot;/[^a-zA-Z0-9 ]/&quot;,&quot;&quot;,$str)); //sonderzeichen entfernen
    return $url;
  }</description>
		<content:encoded><![CDATA[<p>function create_seo_url($data){</p>
<p>           $search  = array (&#8216;ä&#8217;, &#8216;ö&#8217;, &#8216;ü&#8217;, &#8216;Ä&#8217;, &#8216;Ö&#8217;, &#8216;Ü&#8217;, &#8216;ß&#8217;, &#8216;&amp;&#8217;);<br />
           $replace = array (&#8216;ae&#8217;, &#8216;oe&#8217;, &#8216;ue&#8217;, &#8216;Ae&#8217;, &#8216;Oe&#8217;, &#8216;Ue&#8217;, &#8217;ss&#8217;, &#8216;und&#8217;);<br />
           $str  = str_replace($search, $replace, $data); // Tauscht Umlaute und Sonderzeichen aus<br />
           $str = strtolower($str);     // wandelt alles zu Kleinbuchstaben um</p>
<p>    $url=str_replace(&#8216; &#8216;, &#8216;-&#8217;,preg_replace(&#8220;/[^a-zA-Z0-9 ]/&#8221;,&#8221;",$str)); //sonderzeichen entfernen<br />
    return $url;<br />
  }</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic page generated in 0.601 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-10 16:24:25 -->
