php
count im Schleifenkopf = PFUI!!!
Erstellt am Aug.12, 2010 von admin | php
Ich weiß nicht woher das kommt, aber heute habe ich auf www.php.de mindestens 3 Codesnippets mit einem count Aufruf im Schleifenkopf gesehen.
Das ist aber alles andere als effizient.
Nehmer wir einfach mal folgenden Code:
$daniel = array(
'viele', 'array', 'elemente',..
');
$timestart = microtime(true);
$co = count($daniel);
for ($i = 0; $i < $co; $i++)
{
}
$timeneeded = microtime(true) - $timestart;
echo 'needed: ' . $timeneeded;
Der Aufruf dauert 0.00028085708618164 Microsekunden.
Und nun nicht optimiert:
$daniel = array(
'viele', 'array', 'elemente',..
);
$timestart = microtime(true);
for ($i = 0; $i < count($daniel); $i++)
{
}
$timeneeded = microtime(true) - $timestart;
echo 'needed: ' . $timeneeded;
0.0029871463775635
Wie man sieht ein ordentlicher Unterschied!
Nachtrag: Wie konnte ich nur auf foreach vergessen:(
Natürlich wäre in so einem Falle folgendes “am besten”:
foreach ($daniel AS $var)
{
}
xdebug 2.1 verfügbar
Erstellt am Jun.30, 2010 von admin | php
Wie ich gerade festgestellt habe, hat man Gestern Version 2.1 des beliebten Debuggers veröffentlicht.
Neuerungen: (weiterlesen…)
Netbeans und XDebug
Erstellt am Jun.24, 2010 von admin | php
Wie versprochen ein weiterer Teil aus meiner “Netbeans Reihe”.
Hier geht es nun um den XDEBUG Debugger. (weiterlesen…)
Verzeichnisse mit php durchsuchen
Erstellt am Jun.23, 2010 von admin | php
Wiedermal eher eine “Notiz” an mich, aber sicher auch für den ein oder anderen von den Lesern nützlich.
Komischerweise kennt kaum jemand die glob() Funktion.
zB alle XML Dateien aus einem Ordner auslesen:
foreach (glob("*.xml") as $filename) {
$xmlfiles[] = $filename;
}
Desweiteren gibt es die Möglichkeit, folgende Flags zu benutzen, so das man gezielt filtern kann.
* GLOB_MARK – Adds a slash to each directory returned
* GLOB_NOSORT – Return files as they appear in the directory (no sorting)
* GLOB_NOCHECK – Return the search pattern if no files matching it were found
* GLOB_NOESCAPE – Backslashes do not quote metacharacters
* GLOB_BRACE – Expands {a,b,c} to match ‘a’, ‘b’, or ‘c’
* GLOB_ONLYDIR – Return only directory entries which match the pattern
* GLOB_ERR – Stop on read errors (like unreadable directories), by default errors are ignored.
Templates im Netbeans
Erstellt am Jun.17, 2010 von admin | php
Durch Nils Artikel im phphatesme Blog zu den Eclipse Templates habe ich mich vorgestern mit den Templates im Netbeans beschäftigt.
Nach einigem Herumkämpfen, zig Neuinstallationen (da dann Schlussendlich NB 6.9 rauskam) hatte ich es endlich. (weiterlesen…)
Artfiles stellt php4 Support ein
Erstellt am Jun.16, 2010 von admin | Allgemeines, php
Gerade gestern habe auf php.de in einem Thread dem TE meine Meinung zu PHP4 Support “aufschwätzen” wollen und heute sehe ich das:Also liebe Entwicklerkollegen. Denkt nicht mehr “in der Vergangenheit”, konzentriert euch lieber auf das “Morgen”
Netbeans IDE Tipp Teil 1
Erstellt am Jun.16, 2010 von admin | Allgemeines, php
Kanntet ihr schon den ALT + Enter Trick?
Mal angenommen ihr habt folgenden Code:
$foo = array(’bli’, ‘bla’, ‘blo’);
foreach ($foo as $var){
echo “$var\n”;
}
und ihr möchtet einen Output Buffer drumherum konstruieren.Markiert einfach denn entsprechenden Codeteil und drückt ALT + Enter
Es öffnet sich nun ein “Menü” mit vielen, nützlichen Funktionen mit dennen ihr den ausgewählten Code “umgeben” könnt. Wie zb in meinem Fall denn Output Buffer Funktionen ob_start(); ob_get_contents() und ob_end_clean.
Eigentlich sind alle selbsterklärend bist auf:
// <editor-fold defaultstate=”collapsed” desc=”comment”>
echo $bla; // </editor-fold>
Weiß jemand zufällig was das bedeutet, bzw was für eine Funktion dahinter steckt?
Unter Windows gibt es ja auch pipes
Erstellt am Jun.01, 2010 von admin | Allgemeines, Rumprogrammiererei, php
Der heutige Artikel ist hat eher eine Erinnerungsfunktion an mich, da ich nicht gewusst habe, dass es auch in der Windows Eingabeaufforderung eine Pipes Funktion gibt.
Bisher habe ich immer in die Virtuelle Maschine gewechselt und den benötigten Befehl unter Ubuntu ausgeführt.
Hier sind alle Möglichkeiten aufgelistet: http://commandwindows.com/command1.htm