File tree Expand file tree Collapse file tree 2 files changed +37
-1
lines changed Expand file tree Collapse file tree 2 files changed +37
-1
lines changed Original file line number Diff line number Diff line change @@ -610,10 +610,11 @@ public function aggregate($pipeline)
610
610
* Execute a find query and return the results.
611
611
*
612
612
* @param bool $useMasterKey
613
+ * @param bool $decodeObjects If set to false, will not return raw data instead of ParseObject instances
613
614
*
614
615
* @return ParseObject[]
615
616
*/
616
- public function find ($ useMasterKey = false )
617
+ public function find ($ useMasterKey = false , $ decodeObjects = true )
617
618
{
618
619
$ sessionToken = null ;
619
620
if (ParseUser::getCurrentUser ()) {
@@ -627,6 +628,13 @@ public function find($useMasterKey = false)
627
628
null ,
628
629
$ useMasterKey
629
630
);
631
+ if (!$ decodeObjects ) {
632
+ if (array_key_exists ('results ' , $ result )) {
633
+ return $ result ['results ' ];
634
+ } else {
635
+ return [];
636
+ }
637
+ }
630
638
$ output = [];
631
639
foreach ($ result ['results ' ] as $ row ) {
632
640
$ obj = ParseObject::create ($ this ->className , $ row ['objectId ' ]);
Original file line number Diff line number Diff line change @@ -2365,6 +2365,34 @@ public function testAndQueriesVaryingClasses()
2365
2365
]);
2366
2366
}
2367
2367
2368
+ public function testQueryFindEncoded ()
2369
+ {
2370
+ $ obj = new ParseObject ('TestObject ' );
2371
+ $ obj ->set ('name ' , 'John ' );
2372
+ $ obj ->set ('country ' , 'US ' );
2373
+ $ obj ->save ();
2374
+
2375
+ $ obj = new ParseObject ('TestObject ' );
2376
+ $ obj ->set ('name ' , 'Bob ' );
2377
+ $ obj ->set ('country ' , 'US ' );
2378
+ $ obj ->save ();
2379
+
2380
+ $ obj = new ParseObject ('TestObject ' );
2381
+ $ obj ->set ('name ' , 'Joel ' );
2382
+ $ obj ->set ('country ' , 'CA ' );
2383
+ $ obj ->save ();
2384
+
2385
+ $ query = new ParseQuery ('TestObject ' );
2386
+ $ query ->ascending (['country ' ,'name ' ]);
2387
+ $ results = $ query ->find (false , false );
2388
+
2389
+ $ this ->assertEquals (3 , count ($ results ));
2390
+
2391
+ $ this ->assertEquals ('Joel ' , $ results [0 ]['name ' ]);
2392
+ $ this ->assertEquals ('Bob ' , $ results [1 ]['name ' ]);
2393
+ $ this ->assertEquals ('John ' , $ results [2 ]['name ' ]);
2394
+ }
2395
+
2368
2396
/**
2369
2397
* @group query-set-conditions
2370
2398
*/
You can’t perform that action at this time.
0 commit comments