PHP-Buch fuer Einsteiger gesucht



  • witte schrieb:

    strpos("abc", "a") == strpos("abc", "z")

    Den versteh ich nich 😕 ^^

    Ich denke man kann sich in PHP, mit guten C++ Vorkentnissen, schnell einarbeiten. Zumindest schneller als gänzlich ohne Vorkentnisse. Syntaktisch ist es ja sehr ähnlich...

    LG, Micha



  • RandomAccess85 schrieb:

    witte schrieb:

    strpos("abc", "a") == strpos("abc", "z")

    Den versteh ich nich 😕 ^^

    die obige Aussage wird als true ausgewertet.

    Warum? Wenn der String nicht gefunden wurde, liefert strpos FALSE zurück. Und das ist das gleiche wie 0 oder "". Das erste strpos liefert aber ebenfalls 0 zurück, da der String ja an Position 0 ist

    Aushilfe schafft folgendes: ^^

    strpos("abc", "a") === strpos("abc", "z")
    

    damit wird auch der Typ auf Gleichheit überprüft, nicht nur der Wert



  • zwutz schrieb:

    RandomAccess85 schrieb:

    witte schrieb:

    strpos("abc", "a") == strpos("abc", "z")

    Den versteh ich nich 😕 ^^

    die obige Aussage wird als true ausgewertet.

    Warum? Wenn der String nicht gefunden wurde, liefert strpos FALSE zurück. Und das ist das gleiche wie 0 oder "". Das erste strpos liefert aber ebenfalls 0 zurück, da der String ja an Position 0 ist

    Aushilfe schafft folgendes: ^^

    strpos("abc", "a") === strpos("abc", "z")
    

    damit wird auch der Typ auf Gleichheit überprüft, nicht nur der Wert

    Weiss baer nicht was daran jetzt ein Kompliziertes Beispiel sein soll?



  • ... das die Sprache Fallstricke besitzt was sie schwieriger/komplizierter zu lernen macht. Das Beispiel selbst ist nicht kompliziert.



  • zwutz schrieb:

    RandomAccess85 schrieb:

    witte schrieb:

    strpos("abc", "a") == strpos("abc", "z")

    Den versteh ich nich 😕 ^^

    die obige Aussage wird als true ausgewertet.

    Warum? Wenn der String nicht gefunden wurde, liefert strpos FALSE zurück. Und das ist das gleiche wie 0 oder "". Das erste strpos liefert aber ebenfalls 0 zurück, da der String ja an Position 0 ist

    Aushilfe schafft folgendes: ^^

    strpos("abc", "a") === strpos("abc", "z")
    

    damit wird auch der Typ auf Gleichheit überprüft, nicht nur der Wert

    logisch -.- danke 🙂

    LG, Micha



  • @ árn[y]ék: Du brauchst mir über PHP nichts zu erzählen, PHP-Sicherheit ist pippie-einfach: htmlentites(), -specialchars(), addslashes(), mysql_real_escape(), dynSessids und browsermarks sind gute und einfache Verfahren. Das === ist ja sowas von "tricky". -.-
    Selber Schuld, wenn du sowas schreibst:

    eval($_GET['some_vars']);
    
    <?php
    $sqli = new mysqli('sddgdf.net', 'giugiu', 'ghuhguh', 'khkll');
    $sql = $sqli->query("SELECT * FROM `table` WHERE '" . $_GET['x'] . "' = 'la'");
    ?>
    

    PHP IST EINFACH. Es gibt keine typensicherheit (zum kotzen, aber wenigstens type-hinting) und die OOP von PHP ist zum heulen. Wer C++ kann, hat mit PHP 0 Probleme, man muss dort mehr nur ein gewissen Faktenwissen haben, da PHP sehr viele Libs/Extensions mitbringt. (siehe php.net).
    Lern erst mal PHP online. Wenn du dann immernoch ein Nachschlagewerk willst, solltest du lieber etwas warten. PHP 5.3 bringt endlich Namespaces und schöne Autoload-Strukturen, späte Bindung, uvm. mit, also wichtige Neuerungen, die noch nicht so schnell abgedruckt sind. 😉

    Das schlimmste für das Web sind Anfänger. Aber PHP ist learning by doing pur, die Sprache kann man als Umsteiger nach 1 Monat komplett, Sachen wie cURL, MySQL, Sessions, GD oder SOAP kommen dann peu á peu.


Anmelden zum Antworten