PHP PDO: الاختلافات بين أساليب استرداد نتيجة عمود واحد

StackOverflow https://stackoverflow.com/questions/719514

  •  23-08-2019
  •  | 
  •  

سؤال

ما الفرق بين

$PDOStatement->fetchColumn();

و

$PDOStatement->fetch(PDO::FETCH_COLUMN);

(إذا كان أحد موجود)؟ أم أنها تشبه وظيفيا ولكن مختلفة فقط بشكل جمالي؟

هل كانت مفيدة؟

المحلول

بشكل افتراضي fetchColumn() سوف تعود فقط 'value' بينما سيعود الآخر افتراضيا array('column_name'=>'value'). وبعد يجب عليك استخدام setFetchMode() لتغيير ذلك.

$PDOStatement->fetchColumn($colno);

سيكون ما يعادل:

$PDOStatement->setFetchMode(PDO::FETCH_COLUMN, $colno);
$PDOStatement->fetch();

نصائح أخرى

من المستند هنا لجلب، لا يبدو أن هناك نمط PDO :: fetch_column. إذا كان هذا صحيحا، فسيقوم الفرق بإرجاع صف، بينما سيعود Fetchcolumn فقط العمود المحدد.

من خلال Fetchcolumn Default () سيعود فقط "القيمة"، بينما سيتم إرجاع الآخر بشكل افتراضي صفيف ("column_name" => "القيمة"). يجب عليك استخدام SetFetchMode () لتغيير ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top