在php中按特定顺序获取mongodb字段


get mongodb fields in particular order in php

我从php中的mongodb获取数据,并在表中显示字段。我可以按照我设置的顺序从mongodb中获取php中的字段吗?例如,当我在字段中发送的字段顺序不影响我显示它们的字段顺序时:

$cursor = static::getMongoCollection(false)->find($query)->fields($fields);

例如,如果我使用,它以相同的顺序显示现在很重要

$fields = array("field1" => 1, "field2" => 1, "field3" => 1)

$fields = array("field3" => 1, "field2" => 1, "field1" => 1)

我需要在我的应用程序中以不同的顺序显示字段。有办法做到吗?

PHP驱动程序只是按照MongoDB发送的任何顺序从MongoDB返回字段。因此,无论您如何选择要返回的字段,发送回的数据都不会更改(当然,除非您更改字段列表)。你为什么不在结果返回后自己订购呢?

也许您需要ksort

请参阅:http://php.net/manual/en/function.ksort.php