当前位置:  开发笔记 > 编程语言 > 正文

PHP/MySQL - 如何根据给定的查询结果确定字段名称?

如何解决《PHP/MySQL-如何根据给定的查询结果确定字段名称?》经验,为你挑选了2个好方法。

给定结果集,我如何确定查询中指定的字段的实际名称(不是它们的别名).

$query = "SELECT first AS First_Name, last AS Last_Name FROM people";
$dbResult = mysql_query($query);

$fieldCount = mysql_num_fields($dbResult);
for ($i=0; $i<$fieldCount; $i++) {          
    // Set some values
    $fieldName = mysql_field_name($dbResult, $i);
}

此示例返回字段名称,但在此示例中,它返回别名"First_Name"而不是实际字段名称"first".

是否可以从这样的查询中获取实际的字段名称.特别是如果我正在编写一个函数,并且不知道将抛出什么查询.



1> bobwienholt..:

如果您使用的是MySQLi:

http://www.php.net/manual/en/mysqli-result.fetch-field.php

字段对象具有"orgname"属性.

"经典"MySQL等效函数不报告原始列名.



2> Peter Bailey..:

简短的回答:你没有.

答案很长:一旦数据集被MySQL提取并发送回PHP,PHP现在拥有的唯一信息就是列或别名(如果您使用它们).无法查看结果集并确定原始列名称是什么.您必须切换到另一个像mysqli这样的数据库驱动程序来获取此信息.

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有