Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在mysql中显示多个表的列名_Php_Mysql - Fatal编程技术网

Php 如何在mysql中显示多个表的列名

Php 如何在mysql中显示多个表的列名,php,mysql,Php,Mysql,我有两个表person和country。表person有3列id\u person、name\u person和id\u countrycountry有两列id\u country和name\u country 我想显示“人名”和“国家名”,只是列的名称,而不是记录。我怎么能得到这个 这应该可以做到: $result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country a

我有两个表
person
country
。表
person
有3列
id\u person
name\u person
id\u country
country
有两列
id\u country
name\u country

我想显示“人名”和“国家名”,只是列的名称,而不是记录。我怎么能得到这个

这应该可以做到:

$result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country as c ON (p.id_country=c.id_country)');
$fields = array_keys($result->fetch(PDO::FETCH_ASSOC));
如果您想获取数据,而不仅仅是列名称,只需删除数组_键即可

$fields = $result->fetch(PDO::FETCH_ASSOC);
这应该做到:

$result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country as c ON (p.id_country=c.id_country)');
$fields = array_keys($result->fetch(PDO::FETCH_ASSOC));
如果您想获取数据,而不仅仅是列名称,只需删除数组_键即可

$fields = $result->fetch(PDO::FETCH_ASSOC);

您可以访问MySQL信息模式数据库中的表列:

SELECT `COLUMN_NAME` 
FROM `INFORMATION_SCHEMA`.`COLUMNS` 
WHERE `TABLE_NAME` IN ('country', 'person')
    AND `COLUMN_NAME` LIKE 'name_%';

您可以访问MySQL信息模式数据库中的表列:

SELECT `COLUMN_NAME` 
FROM `INFORMATION_SCHEMA`.`COLUMNS` 
WHERE `TABLE_NAME` IN ('country', 'person')
    AND `COLUMN_NAME` LIKE 'name_%';
你可以用

    $result = $db->query('SELECT person.name_person, country.name_country FROM person LEFT JOIN country ON (person.id_country=country.id_country)');

    print_r(array_keys($result));
你可以用

    $result = $db->query('SELECT person.name_person, country.name_country FROM person LEFT JOIN country ON (person.id_country=country.id_country)');

    print_r(array_keys($result));

请看一看答案。这将有助于理解您试图实现的目标。如果您已经知道列名,为什么要获取列名?我想获取列名以从中创建字符串。然后将其与表的记录合并。最后我只有一根绳子。对不起,我的英语不好,先生:)你想问什么?请阅读,请看一下答案。这将有助于理解你想要达到的目标。如果您已经知道列名,为什么要获取列名?我想获取列名以从中创建字符串。然后将其与表的记录合并。最后我只有一根绳子。对不起,我的英语不好,先生:)你想问什么?请看下面的显示记录。我想显示列的名称使用
array\u键时,第一个键应该只打印列名。这就是显示记录。我想显示第一列的名称。使用
array\u键时,
只应打印列名。