使用PHP和MySQL数据库,如果我不知道列是什么,如何从一行中选择所有内容?

使用PHP和MySQL数据库,如果我不知道列是什么,如何从一行中选择所有内容?,php,mysql,Php,Mysql,我有一个表,但除了1列之外,我不知道这些列是什么。每行只有一个永久数据值,其余列在其他位置添加和删除。这不是查询的问题,我只是: SELECT * FROM table 但是对于php函数bind_result(),我需要为每个列提供变量,我不知道 我认为,一旦我在数组中有了列,我就可以进行另一次查询,并使用call\u user\u func\u数组将结果绑定到数组 这似乎会出现很多问题,所以我想知道有没有一种标准的方法可以做到这一点?你可以这样做 show columns from tab

我有一个表,但除了1列之外,我不知道这些列是什么。每行只有一个永久数据值,其余列在其他位置添加和删除。这不是查询的问题,我只是:

SELECT * FROM table
但是对于php函数bind_result(),我需要为每个列提供变量,我不知道

我认为,一旦我在数组中有了列,我就可以进行另一次查询,并使用call\u user\u func\u数组将结果绑定到数组

这似乎会出现很多问题,所以我想知道有没有一种标准的方法可以做到这一点?

你可以这样做

show columns from table;

然后解析该字符串以获取列名

您也可以尝试使用
descripe
命令,该命令用于列出表中的所有字段以及每个字段的数据格式。用法:

describe TableName;
你可以用

$metadata = $prep_statement->result_metadata()
在执行语句之后,然后使用以下命令循环所有结果字段

while( $field = $metadata->fetch_field() ) { }
$field的属性记录在这里:

您就不能这样做吗:

$result = mysql_query("SELECT * FROM table");

while ($row = mysql_fetch_assoc($result)) 
{
    foreach ($row as $field => $value)
    {
       ...
    }
}