2017-02-05 11 views
1

私はWeb開発には新しく、現在フレームワークを使用していません。

これまで、mysqli_query($conn, $sql)を使用して、MySQLサーバにクエリを送信していました。

最近、私は$conn - > query($sql)を使用する別のテクニックを読んでいました。

私は$conn->query($sql)がOIPの質問送信方法であり、が手続き的な方法であることを知っています。

私はまだオブジェクト指向のPHPを学んでいませんが、私はすぐにフレームワークに移行する前にそれを学ぶつもりです。

誰かが私に$conn->query($sql)mysqli_query($conn, $sql)以上に使う利点を教えてもらえますか? より安全ですか?他に何かありますか?

私はOOPが手続き型よりも優れていることを知っていますが、セキュリティの点から主な利点を知りたいと思います(主に)!

+0

同じ違い、頭や尻のコインは同じ価値があります。あなたの必要に応じて。私の意見。短い簡単なクエリのための手順。あなたのデータを「作業する」必要があるとき、またはより長いスクリプトでOOPを実行する。手続き型はOOPよりも優れており、OOPを使用しないでください。私は人間のためにOOPを使う方が簡単ですが、意見は答えではありません;)セキュリティのために、可視性を見てみましょう:http://php.net/manual/en/language.oop5.visibility .php –

+0

手続き型VS OOPの場合、visiblityの横には、私は考えることができません。たぶんもっと専門的なユーザーがそれに追加する –

+0

kありがとうございました。病気をチェックしてください。 –

答えて

0

どちらもありません。まっすぐそれを得るために

3点:

  1. そこには、「学習」するくらいに注目しています。オブジェクトの構文は、それほど愚かです。メソッドやプロパティにアクセスするための矢印です。確かにあなたはすでにそれを行く。
  2. 二番目のオプションは、ちょうどあなたが少なくを入力して取得します。

    mysqli_query($mysqli, $query); 
    vs. 
    $mysqli->query($query); 
    
  3. あなたはPDOを使用する必要がありますいずれかの方法を、ないOOPは手続きよりも優れている、私が知っている

をmysqliの

これはちょうどここでは無関係です。オブジェクト指向プログラミングとオブジェクト構文を混同しないでください。前者は非常に複雑な話題です。学ぶのに何年もかかりますが、あなたはすぐにそれを手に入れることはほとんどありません。オブジェクト構文は構文に過ぎませんが、それ以上のことはありません。心配するほど複雑すぎるものでも、劇的な利点もありません。

-1

「OOPは手続き型プログラミングより優れています。私たちがパフォーマンスに関して話しているのであれば、はいOOPは手続き型プログラミングより効率的で組織化されています。あなたが大規模な複雑なプロジェクトを構築している場合は、OOPを使用してください。しかし、我々がセキュリティについて話しているなら、手続き型プログラミング方法はOOPメソッドほど安全です。特にPDOを使用している場合。 PDOを使用する場合は、クエリに直接変数を渡すのではなく、SQLインジェクションなどの攻撃を防止するために名前付きプレースホルダを使用します。 PDOを使用する場合は、PDOがそれを処理するため、自分で入力をサニタイズする必要はありません(余分なコーディングが不要になります)。

Obejct指向のプログラミングスタイルに準拠しているので、PDOで学習を開始することをお勧めします。それでは、OOPHPでコードを書くときには、既に始まっています。希望が役立ちます。

+0

ありがとうございました..私はそれをチェックアウトします –