"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment utiliser efficacement les instructions préparées à MySQLI avec l'opérateur in?

Comment utiliser efficacement les instructions préparées à MySQLI avec l'opérateur in?

Publié le 2025-03-23
Parcourir:398

How to Use MySQLi Prepared Statements with the IN Operator Effectively?

Les instructions préparées mysqli avec l'opérateur dans l'opérateur

Les instructions préparées offrent une sécurité et des performances améliorées sur les requêtes traditionnelles en vous permettant de spécifier les valeurs de paramètre séparément de l'instruction elle-même. Cependant, lorsqu'il s'agit d'utiliser des instructions préparées avec l'opérateur en opérateur, vous pouvez rencontrer des problèmes si votre approche n'est pas correcte. Base de données.

La solution

La solution réside dans le traitement de chaque valeur de paramètre individuellement:

Créer un tableau avec des touches numérotées et passer des valeurs à lui explicitement par référence. Type de données.

Combinez la chaîne de type de données avec un tableau de points de question instruction.

  1. Exemple de code
  2. Php $ LastNames = ['Braun', 'Piorkowski', 'Mason', 'Nash']; $ arparams = []; foreach ($ lastName comme $ key => $ value) { $ arparams [] = & $ lastNames [$ key]; } $ count_params = count ($ arparams); $ int = str_repeat ('i', $ count_params); array_unshift ($ arparams, $ int); $ q = array_fill (0, $ count_params, '?'); $ params = implode (',', $ q); $ data_res = $ mysqli-> prépare ("select` id`, `name`,` `Â 'de` utilisateurs' où `LastName` dans ({$ params})"); call_user_func_array ([$ data_res, 'bind_param'], $ arparams); $ data_res-> execute (); $ result = $ data_res-> get_result (); while ($ data = $ result-> fetch_array (mysqli_assoc)) { // Votre code ici ... } $ result-> gratuit (); $ data_res-> close ();
  3. Cette approche vous permet de lier correctement plusieurs valeurs à l'instruction préparée à l'aide de l'opérateur in.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3