[PHP - SQL] $db->query('...') Qu'est-ce ???

Résolu
Bonjour,

Bon, tout est dans le titre...
Quand je vois dans un script tel que fluxbb, joomla des variables comme $db utilisées avec un "->", qu'est-ce que ça veut dire ?

À quoi ça sert de faire un $db->query() à la place d'un mysql_query() (pour MySQL évidemment) ?

J'ai entendu parler d'une variable $GLOBALS. Est-ce que ça vient de là ? (du style $GLOBALS['db']...)

Merci de m'éclairer là dessus.

Yoone.
Configuration: Mac OS X / Safari 528.16 (iPod Touch)

5 réponses

  1. C'est de la POO (programmation orientée objet).
    La plupart de ces CMS n'utilisent plus les fonctions "mysql_" car elles ne sont plus conseillées.
    Maintenant le mieux c'est PDO comme interface d'accès aux SGBD.
    Et PDO est une classe PHP d'où ses méthodes "query()", "exec()", "prepare()", ...
    https://www.php.net/pdo
    http://www.siteduzero.com/tutoriel-3-34790-pdo-interface-d-acces-aux-bdd.html
    1
    1. bonjour

      à mon avis : rien à voir avec une varaible globale, mais plutôt avec la programmation objet.

      un objet appelé $db a été créé à partir d'une classe
      et on utilise la fonction query déclarée dans cet objet
      0
      1. Merci, ça va au moins mieux orienter mes recherches...
        Mais quelle est la syntaxe pour créer justement un "objet" de ce type ?

        Merci.
        0
        1. un petit exemple
          Un objet simple nommé MaClasse.php
          <?php
          
          
          class MaClasse{
              var $output;
              var $indice=2;
              function MaClasse($multiplicateur){
                   $output=$multiplicateur*$indice;
          
          }
             function Diviser($diviseur){
                  return $diviseur/$indice;
          
          }
          }
          ?>
          


          Puis quand tu dois l'utiliser

          <?php
          include('MaClasse.php');
          
          $objet=new MaClasse(5);
          
          $first= $objet->output;//$first sera égal à 10
          
          
          $second=$objet->Diviser(10); // $second sera égal à 5
          
          $objet->indice=10;
          $third=$objet->Diviser(10);//$third sera égal à 1
          
          
          ?>
          
          

          0
          1. Merci beaucoup pour ces infos !

            Yoone.
            0