Hướng dẫn how to get field name in mysqli using php - cách lấy tên trường trong mysqli bằng php

❮ Php mysqli tham khảo

Ví dụ - Phong cách định hướng đối tượng

Trả về một mảng các đối tượng đại diện cho các trường trong một tập hợp kết quả, sau đó in tên, bảng và độ dài tối đa của mỗi trường: Độ dài tối đa:

$mysqli = new mysqli("localhost","my_user","my_password","my_db");

if ($ mysqli -> connect_errno) {& nbsp; Echo "Không thể kết nối với MySQL:". $ mysqli -> Connect_error; & nbsp; lối ra(); }
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

$ sql = "Chọn tên cuối cùng, tuổi từ người đặt hàng theo tên cuối cùng";

if ($ result = $ mysqli -> truy vấn ($ sql)) {

& nbsp; // Nhận thông tin trường cho tất cả các trường & nbsp; $ fieldInfo = $ result -> fetch_fields ();
  $fieldinfo = $result -> fetch_fields();

& nbsp; foreach ($ fieldInfo là $ val) {& nbsp; & nbsp; & nbsp; printf ("Tên: %s \ n", $ val -> name); & nbsp; & nbsp; & nbsp; printf ("Bảng: %s \ n", $ val -> bảng); & nbsp; & nbsp; & nbsp; printf ("Max. Len: %d \ n", $ val -> max_length); & nbsp; & nbsp;} & nbsp; $ result -> free_result ();}
    printf("Name: %s\n", $val -> name);
    printf("Table: %s\n", $val -> table);
    printf("Max. Len: %d\n", $val -> max_length);
  }
  $result -> free_result();
}

$ mysqli -> đóng ();?>
?>


Nhìn vào ví dụ về phong cách thủ tục ở phía dưới.


Định nghĩa và cách sử dụng

Hàm fetch_fields () / mysqli_fetch_fields () trả về một mảng các đối tượng đại diện cho các trường trong một kết quả.


Cú pháp

Phong cách định hướng đối tượng:

$ mysqli_result -> fetch_fields ()

Phong cách thủ tục:

mysqli_fetch_fields (kết quả)

Giá trị tham số

Tham sốSự mô tả
kết quảYêu cầu. Chỉ định một định danh tập kết quả được trả về bởi mysqli_query (), mysqli_store_result () hoặc mysqli_use_result ()

Chi tiết kỹ thuật

Giá trị trở lại:Trả về một mảng các đối tượng chứa thông tin định nghĩa trường. Sai nếu không có thông tin có sẵn. Các đối tượng có các thuộc tính sau:
  • Tên - Tên của cột
  • Orgname - Tên cột gốc (nếu bí danh được chỉ định)
  • Bảng - Tên của bảng
  • orgtable - tên bảng gốc (nếu bí danh được chỉ định)
  • MAX_LEPT - chiều rộng tối đa của trường
  • Chiều dài - Chiều rộng của trường như được chỉ định trong định nghĩa bảng
  • CharSetNR - Số tập ký tự cho trường
  • cờ - bit -flags cho trường
  • Loại - Kiểu dữ liệu được sử dụng cho trường
  • Số thập phân - cho các trường số nguyên; số thập phân được sử dụng
Phiên bản PHP:5+

Ví dụ - Phong cách thủ tục

Trả về một mảng các đối tượng đại diện cho các trường trong một tập hợp kết quả, sau đó in tên, bảng và độ dài tối đa của mỗi trường: Độ dài tối đa:

$con = mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno ()) {& nbsp; Echo "Không thể kết nối với MySQL:". mysqli_connect_error (); & nbsp; lối ra(); }
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  exit();
}

$ sql = "Chọn tên cuối cùng, tuổi từ người đặt hàng theo tên cuối cùng";

if ($ result = $ mysqli -> truy vấn ($ sql)) {

& nbsp; // Nhận thông tin trường cho tất cả các trường & nbsp; $ fieldInfo = $ result -> fetch_fields ();
  $fieldinfo = mysqli_fetch_fields($result);

& nbsp; foreach ($ fieldInfo là $ val) {& nbsp; & nbsp; & nbsp; printf ("Tên: %s \ n", $ val -> name); & nbsp; & nbsp; & nbsp; printf ("Bảng: %s \ n", $ val -> bảng); & nbsp; & nbsp; & nbsp; printf ("Max. Len: %d \ n", $ val -> max_length); & nbsp; & nbsp;} & nbsp; $ result -> free_result ();}
    printf("Name: %s\n", $val->name);
    printf("Table: %s\n", $val->table);
    printf("Max. Len: %d\n", $val->max_length);
  }
  mysqli_free_result($result);
}

$ mysqli -> đóng ();?>
?>



❮ Php mysqli tham khảo


Mã sau đây có tất cả các tên cột từ Bảng table_name:

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SHOW COLUMNS FROM table_name';
$res = $mysqli->query($sql);

while($row = $res->fetch_assoc()){
    $columns[] = $row['Field'];
}

Vì tôi có các cột idname trong bảng của mình, đây là kết quả:

Array
(
    [0] => id
    [1] => name
)

Nếu bạn muốn lấy các cột từ một kết quả, nó phụ thuộc, nhưng đây là một cách để làm điều đó:

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}

Kết quả ví dụ cho $columns:

Array
(
    [0] => id
    [1] => name
)

Kết quả ví dụ cho

Array
(
    [0] => id
    [1] => name
)
0:

Array
(
    [0] => Array
        (
            [id] => 1
            [name] => Name 1
        )

    [1] => Array
        (
            [id] => 2
            [name] => Name 2
        )

)

mysqli_fetch_fields

(Php 5, Php 7, Php 8)

mysqli_result :: fetch_fields - mysqli_fetch_fields - trả về một mảng các đối tượng đại diện cho các trường trong một tập hợp kết quả -- mysqli_fetch_fieldsReturns an array of objects representing the fields in a result set

Sự mô tả

Phong cách hướng đối tượng

publicMysqli_result :: fetch_fields (): mảng mysqli_result::fetch_fields(): array

Trả về giá trị

Trả về một mảng các đối tượng chứa thông tin định nghĩa trường.

Thuộc tính đối tượng
Tài sảnSự mô tả
Phong cách hướng đối tượngpublicMysqli_result :: fetch_fields (): mảng
Trả về giá trị Trả về một mảng các đối tượng chứa thông tin định nghĩa trường.
Thuộc tính đối tượngTài sản
TênTên của cột
orgnameTên cột gốc nếu bí danh được chỉ định
bànTên của bảng Trường này thuộc về (nếu không tính toán)
orgtableTên bảng gốc nếu một bí danh được chỉ định
MAX_LEPTChiều rộng tối đa của trường cho tập kết quả.
chiều dài Chiều rộng của trường, tính bằng byte, như được chỉ định trong định nghĩa bảng. Lưu ý rằng số này (byte) có thể khác với giá trị định nghĩa bảng (ký tự) của bạn, tùy thuộc vào bộ ký tự bạn sử dụng. Ví dụ, bộ ký tự UTF8 có 3 byte trên mỗi ký tự, do đó Varchar (10) sẽ trả về chiều dài 30 cho UTF8 (10*3), nhưng trả về 10 cho Latin1 (10*1).
CharsetnrSố đặt ký tự (ID) cho trường.

cờ

Một số nguyên đại diện cho các flag bit cho trường.

Array
(
    [0] => id
    [1] => name
)
1

Array
(
    [0] => id
    [1] => name
)
2

Array
(
    [0] => id
    [1] => name
)
3

loại hình

Array
(
    [0] => id
    [1] => name
)
4

Array
(
    [0] => id
    [1] => name
)
2

Array
(
    [0] => id
    [1] => name
)
6

Loại dữ liệu được sử dụng cho trường này

======================
Character Set: latin1
======================
Name:      actor_id
Table:     actor
Max. Len:  3
Length:    5
charsetnr: 63
Flags:     49699
Type:      2

Name:      last_name
Table:     actor
Max. Len:  12
Length:    45
charsetnr: 8
Flags:     20489
Type:      253

======================
Character Set: utf8
======================
Name:      actor_id
Table:     actor
Max. Len:  3
Length:    5
charsetnr: 63
Flags:     49699
Type:      2

Name:      last_name
Table:     actor
Max. Len:  12
Length:    135
charsetnr: 33
Flags:     20489

số thập phân

  • Số lượng số thập phân được sử dụng (cho các trường số nguyên)
  • Ví dụ
  • Ví dụ #1 Phong cách hướng đối tượng

Ví dụ #2 Phong cách thủ tục

Các ví dụ trên sẽ xuất ra:

Array
(
    [0] => id
    [1] => name
)
7

Array
(
    [0] => id
    [1] => name
)
8

Array
(
    [0] => id
    [1] => name
)
9

Xem thêm

mysqli_num_fields () - Nhận số trường trong tập kết quả

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
0

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
1

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
2

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
3

mysqli_fetch_field_direct () - tìm nạp dữ liệu meta cho một trường duy nhất

mysqli_fetch_field () - Trả về trường tiếp theo trong tập kết quả

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
4

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
5

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
6

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
7

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
8

$mysqli = new mysqli('localhost', 'USERNAME_HERE', 'PASSWORD_HERE', 'DATABASE_HERE');

$sql = 'SELECT * FROM table_name';
$res = $mysqli->query($sql);

$values = $res->fetch_all(MYSQLI_ASSOC);
$columns = array();

if(!empty($values)){
    $columns = array_keys($values[0]);
}
9

Array
(
    [0] => id
    [1] => name
)
0

Andrewroz ¶

mysqli_num_fields () - Nhận số trường trong tập kết quả

Array
(
    [0] => id
    [1] => name
)
1

Array
(
    [0] => id
    [1] => name
)
2

Array
(
    [0] => id
    [1] => name
)
0

mysqli_fetch_field_direct () - tìm nạp dữ liệu meta cho một trường duy nhất

mysqli_fetch_field () - Trả về trường tiếp theo trong tập kết quả

Array
(
    [0] => id
    [1] => name
)
4

Array
(
    [0] => id
    [1] => name
)
5

Array
(
    [0] => id
    [1] => name
)
0

Andrewroz ¶

11 năm trước

Array
(
    [0] => id
    [1] => name
)
7

Array
(
    [0] => id
    [1] => name
)
8

Array
(
    [0] => id
    [1] => name
)
0

Làm thế nào tôi có thể lấy tên cột từ một bảng trong MySQL bằng PHP?

Cú pháp này rất hữu ích để chạy truy vấn SQL trên bảng phpmyadmin và hiển thị các trường của bảng MySQL. Nhưng nếu bạn muốn chọn và lấy tên cột từ bảng trong tập lệnh, truy vấn MySQL cần được thực thi bằng PHP. Thông tin_Schema là cách tốt nhất để có được các cột của bảng trong MySQL.The INFORMATION_SCHEMA is the best way to get the columns of a table in MySQL.

Làm thế nào tôi có thể lấy tên cơ sở dữ liệu trong PHP?

Lấy hoặc tìm nạp dữ liệu từ cơ sở dữ liệu trong PHP..
Chọn Cột_Name (S) từ Table_Name ..
$ query = mysql_query ("Chọn * từ TableName", $ Connection) ;.
$ Kết nối = mysql_connect ("localhost", "root", "") ;.
$ db = mysql_select_db ("công ty", $ kết nối) ;.
$ query = mysql_query ("Chọn * từ nhân viên", $ Connection) ;.

Làm thế nào để bạn lấy dữ liệu từ cơ sở dữ liệu trong PHP bằng MySQLI?

Kết nối với cơ sở dữ liệu:..
MySQLI định hướng đối tượng $ Conn = new mysqli ($ servername, $ username, $ databasename).
Thủ tục MySQLI $ Conn = mysqli_connect ($ servername, $ username, $ password, $ databasename) ;.
PDO.$ Conn = new

Tên trường trong MySQL là gì?

mysql_field_name - Nhận tên của trường được chỉ định trong một kết quả.Cảnh báo.Phần mở rộng này đã không được dùng trong Php 5.5.0, và nó đã được loại bỏ trong Php 7.0.Get the name of the specified field in a result. Warning. This extension was deprecated in PHP 5.5. 0, and it was removed in PHP 7.0.