La figure 3 contient un fragment de code qui illustre l'extraction et le traitement d'un jeu de résultats. Le code préparatoire, non montré ici, est semblable au code de la figure 2. Cependant, dans ce cas, SQL renvoie à un jeu de résultats dans la variable $sqlResult.
Associer les jeux de résultats aux matrices
Votre prochaine tâche consiste à extraire l'information de colonne (champ). Là encore, PHP simplifie les choses. Quand PHP extrait un jeu de résultats (de DB2 for i ou d'une autre base de données), vous pouvez utiliser la fonction db2_fetch_assoc (qui fait partie de l'extension DB2) pour associer chaque ligne à une matrice d'éléments nommés, appelée matrice associative en PHP ($row dans cet exemple). Vous verrez souvent $row utilisé dans l'exemple de code PHP, mais le nom de variable n'a pas de signification propre.
Les index vers la matrice associative sont les noms de colonne du jeu de résultats, qui correspondent presque toujours aux noms de champs dans les données DB2 for i sousjacentes (des exceptions sont possibles si vous attribuez un nom de corrélation dans votre SQL, par exemple). Ainsi, vous pouvez accéder à un champ individuel en utilisant le nom de champ DB2 for i comme un index vers la matrice du jeu de résultats ($row dans ce cas). Bien que l'idée d'un index de matrice nommée plutôt que numérique puisse sembler étrange à première vue, vous apprécierez rapidement sa polyvalence. En fait, c'est un peu comme travailleravec une structure de données RPG. Comme PHP a pris soin d'associer les noms de champs de DB2 for i aux clés de matrice, vous pouvez facilement traiter chaque ligne de ce jeu de résultats au moyen d’une boucle while. À ce stade, vous pouvez manipuler les éléments de matrice directement ou en copier certains pour en faire des variables PHP individuelles, comme dans la figure 3. L'usage futur des données déterminera le choix de l'approche. Quoi que vous fassiez avec les données, PHP facilite le traitement des jeux de résultats.
Figure 3
$sqlSelection = “Select * from $FileName where CusState = ‘$selectState’”;
$sqlResult = db2_exec($SystemiConnection, $sqlSelection);
if ($sqlResult) {
while ($row = db2_fetch_assoc($sqlResult)) {
$customerLastName = $row[‘CUSLNAME’];
$customerFirstName = $row[‘CUSFNAME’];
}
}
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
- Et si les clients n’avaient plus le choix ?
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Activer la mise en veille prolongée dans Windows 10
Les plus consultés sur iTPro.fr
- Stratégie de cyber résilience : la France en avance sur la prise de conscience mais en retard sur les moyens
- Pourquoi Shopify Plus s’impose dans la transformation du e-commerce B2B
- Cybersécurité 2026 : Deepfakes, IA agentique et déficit de préparation
- Quand l’innovation échappe à ses créateurs: Comment éviter l’effet Frankenstein à l’ère de l’IA
Articles les + lus
Confiance et curiosité : les clés pour entrer (et grandir) en tant que femme dans la tech
Portails développeurs internes : accélérer l’innovation sans alourdir les budgets
Pourquoi Shopify Plus s’impose dans la transformation du e-commerce B2B
Quand l’innovation échappe à ses créateurs: Comment éviter l’effet Frankenstein à l’ère de l’IA
Alliée ou menace ? Comment l’IA redessine le paysage cyber
À la une de la chaîne Tech
- Confiance et curiosité : les clés pour entrer (et grandir) en tant que femme dans la tech
- Portails développeurs internes : accélérer l’innovation sans alourdir les budgets
- Pourquoi Shopify Plus s’impose dans la transformation du e-commerce B2B
- Quand l’innovation échappe à ses créateurs: Comment éviter l’effet Frankenstein à l’ère de l’IA
- Alliée ou menace ? Comment l’IA redessine le paysage cyber
