5
使用PHP的mysqli扩展,我可以使用fetch_field()
方法在结果中通过orgname
和orgtable
获取列和表的原始(未分析)名称。 PDO提供方法getColumnMeta()
,但不提供有关原始表和列名称的信息;它只会返回别名。如何在使用PDO时获取原始表格/列名称?
有没有其他方法可以用PDO获取这些信息?我一直在思考分析来自SQL查询的信息,但我希望有更漂亮的解决方案...使用PDOStatement::getColumnMeta()
SELECT id AS col1, session AS col2 FROM sessions AS table1;
结果:
Array
(
[native_type] => LONG
[flags] => Array
(
[0] => not_null
[1] => primary_key
)
[table] => table1
[name] => col1
[len] => 10
[precision] => 0
[pdo_type] => 2
)
Array
(
[native_type] => VAR_STRING
[flags] => Array
(
[0] => not_null
[1] => unique_key
)
[table] => table1
[name] => col2
[len] => 32
[precision] => 0
[pdo_type] => 2
)
根据文档,调用['PDOStatement.getColumnMeta'](http://php.net/PDOStatement.getColumnMeta)的结果包含一个'表'列,其中包含“[他]的名字这个列的表由数据库返回。“这不是你在练习中看到的吗? – outis
我将结果添加到我的文章! –
祝你好运! –