


Comment instancier dynamiquement des objets PHP en fonction des types de bases de données ?
Instancier dynamiquement des objets PHP à partir de types de bases de données
En PHP, il est possible de créer dynamiquement un objet basé sur une chaîne spécifiant un type défini dans une table de base de données. Pour y parvenir, on peut utiliser la requête de base de données et les capacités de création d'objets dynamiques de PHP.
Considérons une table de base de données avec les colonnes et exemples de données suivants :
id | type | propertyVal ----+------+------------- 1 | foo | lorum 2 | bar | ipsum
Supposons que nous ayons des types de données PHP. défini comme suit :
class ParentClass {...} class Foo extends ParentClass {private $id, $propertyVal; ...} class Bar extends ParentClass {private $id, $propertyVal; ...} // ...(more classes)...
Pour créer un objet d'un type défini par la colonne type de la base de données, nous pouvons exploiter les éléments suivants étapes :
- Exécutez une requête qui sélectionne une ligne avec l'identifiant souhaité.
- Utilisez mysql_fetch_object() pour récupérer les données sous forme de tableau associatif.
- Obtenez le tapez la valeur du tableau associatif.
- Créez dynamiquement un objet de ce type en utilisant la syntaxe : $instance = new $type;.
- Attribuez les propriétés restantes de l'objet à partir du tableau associatif.
Par exemple :
$result = mysqli_query($conn, "SELECT * FROM table WHERE id = 1"); $row = mysqli_fetch_assoc($result); $type = $row['type']; $instance = new $type; unset($row['type']); foreach ($row as $property => $value) { $instance->$property = $value; }
De cette manière, l'objet instance sera créé dynamiquement avec le type spécifié par la colonne de base de données de type et ses propriétés se verront attribuer les valeurs de la ligne sélectionnée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Réduisez l'utilisation de la mémoire MySQL dans Docker

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE?

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin)

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)?

Comment configurer le cryptage SSL / TLS pour les connexions MySQL?
