English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
تقوم دالة mysqli_fetch_field_direct() بجلب معلومات الحقل الفردية
كائن النتيجة PHP (فئة mysqli_result) يمثل النتيجة MySQL، التي تعود من استعلام SELECT أو DESCRIBE أو EXPLAIN.
تقبل دالة mysqli_fetch_field_direct() كائن النتيجة وعدد صحيح يمثل معرف الحقل وتعيد معلومات تعريف الحقل المحدد ككائن.
mysqli_fetch_field_direct($result, $field);
الترتيب | المعلمات وشرحها |
---|---|
1 | result(مطلوب) هذا هو معرف الكائن الممثل للنتائج. |
2 | field(مطلوب) عدد صحيح يمثل الحقل الذي تحتاج إلى معلومات metadata/تعريفه. |
PHP mysqli_fetch_field_direct() يعود بجسم يحتوي على معلومات تعريف الحقل المحدد. إذا لم يكن الحقل المحدد (رقم) متاحًا، فإن هذه الدالة تعودFALSE.
يحتوي العنصر المعد لهذه الدالة على الخصائص التالية:
name - اسم العمود
orgname - اسم العمود الأصلي (إذا تم تحديد اسم بديل)
table - اسم الجدول
orgtable - اسم الجدول الأصلي (إذا تم تحديد اسم بديل)
def - القيمة الافتراضية للحقل
max_length - عرض الحقل الأقصى
length - عرض الحقل المحدد في تعريف الجدول
charsetnr - رقم مجموعة الحروف للحقل
flags - علامات الحقل
type - نوع البيانات المستخدمة للحقل
decimals - حقل عدد، عدد أرقام بعد نقطة العشرية
تم إدخال هذه الدالة في إصدار PHP 5 ويمكن استخدامها في جميع الإصدارات الأعلى.
هذا المثال يوضحmysqli_fetch_field_direct()استخدام الدالة (أسلوب عملية)، عودة معلومات الحقل الثالث (العمود) في مجموعة النتائج، وعرض اسم الحقل، جدول وعرض أطول، نوع البيانات، رقم مجموعة الحروف:
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("إنشاء الجدول.....\n"); mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')"); mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica')"); mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Srilanka')"); print("Inserting records.....\n"); //Retrieve the content of the table $res = mysqli_query($con, "SELECT * FROM myplayers"); //Get metadata of the third field $info = mysqli_fetch_field_direct($res, 2); print("الاسم: ". $info->name. "\n"); print("الجدول: ". $info->table. "\n"); print("أقصى الطول: ". $info->max_length. "\n"); print("المؤشرات: ". $info->flags. "\n"); print("نوع: ". $info->type. "\n"); print("تعريف: ". $info->def. "\n"); print("نظام الأحرف: ". $info->charsetnr. "\n"); //إنهاء الجملة mysqli_free_result($res); //إغلاق الاتصال mysqli_close($con); ?>
نتائج الإخراج
إنشاء الجدول..... Inserting records..... Name: Last_Name Table: myplayers Max Length: 10 Flags: 0 Type: 253
The syntax of this function in the object-oriented style is$result->fetch_field_direct();。The following is the metadata of the second field (column) in the result set returned by this function in the object-oriented style, and outputs the field name, table, maximum length, data type, and character set number of the field:
<?php //Establish connection $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)"); $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)"); print("إنشاء الجدول.....\n"); $stmt = $con -> prepare("SELECT * FROM Test WHERE Name in(?, ?)"); $stmt -> bind_param("ss", $name1, $name2); $name1 = 'Raju'; $name2 = 'Rahman'; //تنفيذ الجملة $stmt->execute(); //البحث في النتائج $result = $stmt->get_result(); //الحصول على بيانات الحقل الثاني $info = $result->fetch_field_direct(1); print("الاسم: ". $info->name. "\n"); print("الجدول: ". $info->table. "\n"); print("أقصى الطول: ". $info->max_length. "\n"); print("المؤشرات: ". $info->flags. "\n"); print("نوع: ". $info->type. "\n"); print("تعريف: ". $info->def. "\n"); print("نظام الأحرف: ". $info->charsetnr. "\n"); //إنهاء الجملة $stmt->close(); //إغلاق الاتصال $con->close(); ?>
نتائج الإخراج
إنشاء الجدول..... الاسم: AGE الجدول: Test أقصى الطول: 0 المؤشرات: 32768 نوع: 3 تعريف: نظام الأحرف: 63