1

抱歉,但我不知道如何在句子中解释这个问题……实际上,当我执行 mysql_fetch_array 时,我有这样的代码……

        [0] => 10
        [id] => 10
        [1] => 58393
        [iid] => 58393
        [2] => 0
        [ilocationid] => 0
        [3] => 38389
        [iapptid] => 38389
        [4] => 2012-06-30T00:00:00
        [ddate] => 2012-06-30T00:00:00
        [5] => 1000
        [ctimeofday] => 1000

但我想返回这样的东西

    [id] => 10
    [iid] => 58393
    [ilocationid] => 0
    [iapptid] => 38389
    [ddate] => 2012-06-30T00:00:00
    [ctimeofday] => 1000

我的意思是没有列的数字代表。我该怎么做...请帮助...

4

1 回答 1

2

mysql_fetch_array()如PHP函数手册中所述:

返回数组的类型取决于如何result_type定义。通过使用MYSQL_BOTH(默认),您将获得一个包含关联索引和数字索引的数组。使用MYSQL_ASSOC,您只能获得关联索引(按mysql_fetch_assoc()工作),使用MYSQL_NUM,您只能获得数字索引(按mysql_fetch_row()工作)。

因此,您想要:

mysql_fetch_array($result, MYSQL_ASSOC);

或者

mysql_fetch_assoc($result);

但请注意警告:

不鼓励使用此扩展程序。相反,应该使用MySQLiPDO_MySQL扩展。另请参阅MySQL:选择 API指南和相关的常见问题解答以获取更多信息。此功能的替代方案包括:

于 2012-07-02T16:06:11.230 回答