2017-02-05 1 views
1

Ich bin neu in der Webentwicklung, derzeit verwende ich keine Frameworks.

Bis jetzt benutzte ich mysqli_query($conn, $sql), um eine Abfrage an den MySQL-Server zu senden.

Kürzlich lese ich eine andere Technik, die $conn - > query($sql) verwenden.

Ich weiß, dass $conn->query($sql) ist die OOP Art und Weise der Abfrage senden und mysqli_query($conn, $sql) ist die prozedurale Methode.

Ich habe noch nicht objektorientierte PHP gelernt Aber ich werde es bald lernen, bevor ich mich auf ein Framework beginne.

Kann mir jemand die Vorteile der Verwendung $conn->query($sql) über die mysqli_query($conn, $sql) sagen? Ist es sicherer? Gibt es noch etwas anderes?

Ich weiß OOP ist besser als Procedural, aber ich würde gerne die wichtigsten Vorteile, aus der Sicht der Sicherheit (vor allem) kennen!

+0

Selbe Unterschied, Kopf oder Schwanz Ihre Münze ist das gleiche wert. Kommt auf Ihre Bedürfnisse an. meine Meinung. Prozedural für kurze einfache Abfrage.OOP, wenn Sie Ihre Daten oder in längeren Skripts 'arbeiten' müssen. Einige werden sagen, Prozedur ist besser als OOP, und Sie sollten OOP nicht verwenden. I thnik OOP ist einfacher für einen Menschen, um die Möglichkeit zu behalten, aber die Meinung ist keine Antwort hier;) Aus Gründen der Sicherheit werfen Sie einen Blick auf Sichtbarkeit: http://php.net/manual/en/language.oop5.visibility .php –

+0

wenn es um prozedurale VS OOP geht, neben der Sichtbarkeit, kann ich nicht denken. Vielleicht mehr professionelle Benutzer werden es hinzufügen –

+0

k danke eine Tonne Ill check it out –

Antwort

0

Weder.

Drei Punkte es gerade zu erhalten:

  1. Es gibt viel Erwähnen zu „lernen“. Das Objekt Syntax ist so dumm wie es scheint: nur ein Pfeil, um auf eine Methode oder eine Eigenschaft zuzugreifen. Sicherlich gehst du es schon.
  2. Zweite Option nur bekommt man weniger eingeben:

    mysqli_query($mysqli, $query); 
    vs. 
    $mysqli->query($query); 
    
  3. Wie auch immer Sie PDO verwenden sollten, mysqli nicht

Ich weiß, OOP ist besser als Procedural

Dies ist nur irrelevant hier. Verwechseln Sie die objektorientierte Programmierung nicht mit der Objektsyntax. Ersteres ist ein sehr komplexes Thema, das Jahre braucht, um es zu lernen, und Sie werden es nicht bald bekommen. Während Objekt-Syntax nur eine Syntax ist - nicht mehr und nicht weniger. Nichts zu kompliziert, um sich Sorgen zu machen, noch irgendwelche dramatischen Vorteile

-1

"OOP ist besser als prozedurale Programmierung" - Ich würde sagen, es kommt darauf an. Wenn wir über Leistung sprechen, dann ist ja OOP effizient und organisierter als prozedurale Programmierung. Wenn Sie ein großes komplexes Projekt erstellen, ist OOP der richtige Weg. Wenn wir jedoch von Sicherheit sprechen, ist die prozedurale Programmiermethode genauso sicher wie die OOP-Methode. Vor allem, wenn Sie PDO verwenden. Wenn Sie PDO verwenden, verwenden Sie benannte Platzhalter, anstatt Variablen direkt an die Abfrage zu übergeben, wodurch Angriffe wie SQL Injection verhindert werden. Und wenn Sie PDO verwenden, müssen Sie Ihre Eingaben nicht selbst bereinigen (zusätzliche Codierung entfällt), weil PDO dafür sorgt.

Ich würde empfehlen, mit PDO zu lernen, weil es Obejct Oriented Programming-Stile folgt, also wenn Sie damit beginnen, werden Sie bereits einen Schritt voraus sein, wenn Sie anfangen, Code in OOPHP zu schreiben. Ich hoffe, das hilft.

+0

Danke eine Tonne .. Ich werde es überprüfen –