<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Ce n'est pas lié au contenu de l'articlePHPSection de code,Peut être n'importe quel code d'initialisation ou de configuration</span></span><span>
</span><span><span class="hljs-variable">$servername</span></span><span> = </span><span><span class="hljs-string">"localhost"</span></span><span>;
</span><span><span class="hljs-variable">$username</span></span><span> = </span><span><span class="hljs-string">"root"</span></span><span>;
</span><span><span class="hljs-variable">$password</span></span><span> = </span><span><span class="hljs-string">""</span></span><span>;
</span><span><span class="hljs-variable">$dbname</span></span><span> = </span><span><span class="hljs-string">"test_db"</span></span><span>;
</span><span><span class="hljs-variable">$conn</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-variable">$servername</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$dbname</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$conn</span></span><span>->connect_error) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"Échec de la connexion: "</span></span><span> . </span><span><span class="hljs-variable">$conn</span></span><span>->connect_error);
}
</span><span><span class="hljs-variable">$query</span></span><span> = </span><span><span class="hljs-string">"SELECT users.id, users.name, orders.order_date, orders.amount FROM users LEFT JOIN orders ON users.id = orders.user_id"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$conn</span></span><span>-></span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-variable">$query</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/*
* mysqli_result::fetch_fields() et mysqli_fetch_assoc() Utilisation conjointe
* Utilisé pour implémenter le traitement dynamique des résultats de requête complexes
*
* Requête complexe,Il peut y avoir de nombreux noms de champ,Et il y a des doublons ou des alias,utiliserfetch_fieldsPeut obtenir des méta-informations sur le terrain,
* Combinéfetch_assocLes données peuvent être lues en ligne par ligne dans un tableau associatif,Obtenir des opérations de données plus flexibles。
*/</span>
</span><span><span class="hljs-comment">// 1. Obtenir des informations sur le terrain</span></span><span>
</span><span><span class="hljs-variable">$fields</span></span><span> = </span><span><span class="hljs-variable">$result</span></span><span>-></span><span><span class="hljs-title function_ invoke__">fetch_fields</span></span><span>();
</span><span><span class="hljs-comment">// 2. Imprimer tous les noms de champs(Utilisation de la démonstration)</span></span><span>
</span><span><span class="hljs-variable">$fieldNames</span></span><span> = [];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$fields</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$field</span></span><span>) {
</span><span><span class="hljs-variable">$fieldNames</span></span><span>[] = </span><span><span class="hljs-variable">$field</span></span><span>->name;
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Les champs de requête ont: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">implode</span></span><span>(</span><span><span class="hljs-string">", "</span></span><span>, </span><span><span class="hljs-variable">$fieldNames</span></span><span>) . </span><span><span class="hljs-string">"<br><br>"</span></span><span>;
</span><span><span class="hljs-comment">// 3. Obtenez des données ligne par ligne et organisez des tableaux avec des noms de champ comme des clés</span></span><span>
</span><span><span class="hljs-keyword">while</span></span><span> (</span><span><span class="hljs-variable">$row</span></span><span> = </span><span><span class="hljs-variable">$result</span></span><span>-></span><span><span class="hljs-title function_ invoke__">fetch_assoc</span></span><span>()) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"utilisateurID: "</span></span><span> . </span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'id'</span></span><span>] . </span><span><span class="hljs-string">"<br>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"utilisateur名: "</span></span><span> . </span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'name'</span></span><span>] . </span><span><span class="hljs-string">"<br>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Date de commande: "</span></span><span> . (</span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'order_date'</span></span><span>] ?? </span><span><span class="hljs-string">'Pas de commande'</span></span><span>) . </span><span><span class="hljs-string">"<br>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Montant de commande: "</span></span><span> . (</span><span><span class="hljs-variable">$row</span></span><span>[</span><span><span class="hljs-string">'amount'</span></span><span>] ?? </span><span><span class="hljs-string">'Aucune quantité'</span></span><span>) . </span><span><span class="hljs-string">"<br>"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<hr>"</span></span><span>;
}
</span><span><span class="hljs-comment">// 4. Fermer la connexion</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span>-></span><span><span class="hljs-title function_ invoke__">free</span></span><span>();
</span><span><span class="hljs-variable">$conn</span></span><span>-></span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Étiquettes associées:
mysqli_result