PHP PDO: الاختلافات بين أساليب استرداد نتيجة عمود واحد
سؤال
ما الفرق بين
$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 () لتغيير ذلك.
لا تنتمي إلى StackOverflow