Arrays vergleichen in C#

1. September 2008, Keine Kommentare

Das ist ein bisschen kniffelig, denn array1 == array2 hat nicht die gewünschte Wirkung, denn sie gibt immer false zurück.

Also muss man jedes einzelne Element eines Arrays vergleichen.

public static bool ArraysEqual(Array a1, Array a2) {
    if (a1 == null || a2 == null || a1.Length != a2.Length) {
        return false;
    }

    IList list1 = a1, list2 = a2;

    for (int i = 0; i < a1.Length; i++) {
        if (!Object.Equals(list1[i], list2[i])) {
            return false;
        }
    }

    return true;
}

Ich geb’s ja zu: Die beste Methode ist es nicht, aber sehr wohl brauchbar…

Goban für den Mac

15. August 2008, Keine Kommentare

Goban

Leider gegen den Computer verloren… 0,5 Moku Unterschied bei 6,5 Komi (Ich bin schwarz)

Mit «Goban» holt man sich ein Go Brett auf den Mac. Eine elegante Native Freeware Alternative für die hässliche Java Alternative Jago.

Man kann entweder gegen den Computer spielen (Mit der Open Source GNUGo Engine, ~10 Kyu) oder im Internet gegen andere Spieler (Auf dem IGS Panda Server zum Beispiel) .

Und wieso Go fürs Programmieren wichtig ist, wird auf Rail Spikes erklärt ;) .

Zeilenumbrüche mit PHP in Absätze verwandeln

20. Juli 2008, Keine Kommentare

In PHP gibt es die tolle nl2br Funktion, die Zeilenumbrüche von einem String automatisch in xHTML konformen <br /> ersetzt. Aber <br /> hat keine semantische Bedeutung… Eigentlich sind es ja Absätze, aber Absätze werden mit <p> und </p> definiert, was nun? Wir brauchen eine nl2p() Funktion.

Leider gibt es so eine Funktion nicht und glücklicherweise habe ich eine Lösung parat:

function nl2p($string) {
    return '<p>' . preg_replace('/(\r\n|[\r\n])\s*(\r\n|[\r\n])/', '</p><p>', $string) . '</p>';
}

Diese Funktion nimmt sich 2 oder mehrere Zeilenumbrüche und ersetzt sie durch </p><p>. Da der erste Absatz kein Anfangstag hat und der letzte Absatz kein Endtag, fügt die Funktion es manuell hinzu.

PHP Vorsichtsmaßnahmen

17. Juli 2008, Keine Kommentare

Mehr Sicherheit

Welche potentiellen Sicherheitlücken beim PHP Programmieren entstehen können und wie man sie verhindert. Nettuts erklärt, wie man sich gegen SQL Injection, Cross Site Scripting und andere gefährlichen Krankheiten schützt.

Nettuts - Can You Hack Your Own Site? A Look at Some Essential Security Considerations.

Ein Regular Expressions Tutorial

13. Juli 2008, Keine Kommentare

Der Grey Hat SEO Blog schreibt in einem Artikel, wie man Regular Expressions verwendet.

The regex are very useful for programmers. Using this device you can describe every string that presents to its inside a certain regularity.

Man sollte Regular Expressions zuerst richtig testen, bevor man sie verwenden sollte.

[Regex Tutorial] regular expressions examples, regexp reference [Regex Tutorial]