توابع mysql_fetch_field() در PHP

تعریف و استفاده

توابع mysql_fetch_field() اطلاعات ستون از مجموعه نتایج گرفته و به عنوان یک شیء بازمی‌گرداند.

mysql_fetch_field() می‌تواند برای دریافت اطلاعات فیلد از نتایج جستجو استفاده شود. اگر مقدار حاشیه فیلد مشخص نشده باشد، فیلد بعدی که هنوز توسط mysql_fetch_field() دریافت نشده است، استخراج می‌شود.

این تابع یک شیء شامل اطلاعات فیلد را بازمی‌گرداند.

ویژگی‌های شیء بازگردانده شده به عنوان:

  • name - نام ستون
  • table - نام جدولی که ستون در آن قرار دارد
  • max_length - طول بیشینه ستون
  • not_null - 1، اگر ستون نمی‌تواند NULL باشد
  • primary_key - 1، اگر ستون کلید اصلی است
  • unique_key - 1، اگر ستون کلید منحصر به فرد است
  • multiple_key - 1، اگر ستون کلید غیر منحصر به فرد است
  • numeric - 1، اگر ستون عددی است
  • blob - 1,如果该列是 BLOB
  • blob - 1، اگر این ستون BLOB است
  • type - نوع این ستون
  • unsigned - 1، اگر این ستون عدد بدون علامت است

zerofill - 1، اگر این ستون zero-filled است

نحوه‌ی استفادهdatamysql_fetch_field(field_offset)
, توضیحات
data ضروری. اشاره‌گر داده‌ای که باید استفاده شود. این اشاره‌گر از mysql_query() بازگشت داده می‌شود.
field_offset ضروری. تعیین می‌کند از کدام میدان شروع شود. 0 معنای میدان اول را دارد. اگر تنظیم نشود، میدان بعدی بازگشت داده می‌شود.

نکات و توضیحات

توضیحات:نام میدان‌هایی که این تابع برمی‌گرداند، حساس به حروف بزرگ و کوچک است.

مثال

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
  {
  die('ناتوان در اتصال: ' . mysql_error());
  }
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * from Person";
$result = mysql_query($sql,$con);
while ($property = mysql_fetch_field($result))
  {
  echo "نام میدان: " . $property->name . "<br />";
  echo "نام جدول: " . $property->table . "<br />";
  echo "مقدار پیش‌فرض: " . $property->def . "<br />";
  echo "طول بیشینه: " . $property->max_length . "<br />";
  echo "بدون NULL: " . $property->not_null . "<br />"; 
  echo "کلیید اصلی: " . $property->primary_key . "<br />";
  echo "کلیید یگانه: " . $property->unique_key . "<br />"; 
  echo "کلیید کثیر: " . $property->multiple_key . "<br />";
  echo "نمبری فیلڈ: " . $property->numeric . "<br />";
  echo "بولب: " . $property->blob . "<br />";
  echo "فیلڈ کا نوعیت: " . $property->type . "<br />";
  echo "غیر منفی: " . $property->unsigned . "<br />";
  echo "زیرو ملکتی: " . $property->zerofill . "<br /><br />"; 
  }
mysql_close($con);
?>

خروجی:

فیلڈ کا نام: نام خاندانی
تھیبل کا نام: شخص
مقصدی مقدار: 
مکس لنگت: 8
نہ NULL: 0
پرائمری کلید: 0
یوکیمائیک کلید: 0
کثیر کلید: 0
نمبری فیلڈ: 0
بولب: 0
فیلڈ کا نوعیت: استرنگ
غیر منفی: 0
زیرو ملکتی: 0
فیلڈ کا نام: نام پہلا
تھیبل کا نام: شخص
مقصدی مقدار: 
مکس لنگت: 7
نہ NULL: 0
پرائمری کلید: 0
یوکیمائیک کلید: 0
کثیر کلید: 0
نمبری فیلڈ: 0
بولب: 0
فیلڈ کا نوعیت: استرنگ
غیر منفی: 0
زیرو ملکتی: 0
فیلڈ کا نام: شہر
تھیبل کا نام: شخص
مقصدی مقدار: 
مکس لنگت: 9
نہ NULL: 0
پرائمری کلید: 0
یوکیمائیک کلید: 0
کثیر کلید: 0
نمبری فیلڈ: 0
بولب: 0
فیلڈ کا نوعیت: استرنگ
غیر منفی: 0
زیرو ملکتی: 0
فیلڈ کا نام: عمر
تھیبل کا نام: شخص
مقصدی مقدار: 
مکس لنگت: 2
نہ NULL: 0
پرائمری کلید: 0
یوکیمائیک کلید: 0
کثیر کلید: 0
نمبری فیلڈ: 1
بولب: 0
فیلڈ کا نوعیت: انٹ
غیر منفی: 0
زیرو ملکتی: 0