Linux vmi2545633.contaboserver.net 6.1.0-32-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64
Apache/2.4.62 (Debian)
Server IP : 127.0.0.1 & Your IP : 127.0.0.1
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
php /
tests /
mongodb /
tests /
command /
Delete
Unzip
Name
Size
Permission
Date
Action
command-ctor-001.phpt
2.17
KB
-rw-r--r--
2025-04-09 02:56
command-ctor-002.phpt
765
B
-rw-r--r--
2025-04-09 02:56
command-ctor_error-001.phpt
479
B
-rw-r--r--
2025-04-09 02:56
command_error-001.phpt
250
B
-rw-r--r--
2025-04-09 02:56
cursor-batchsize-001.phpt
2.46
KB
-rw-r--r--
2025-04-09 02:56
cursor-batchsize-002.phpt
2.4
KB
-rw-r--r--
2025-04-09 02:56
cursor-comment-001.phpt
1.97
KB
-rw-r--r--
2025-04-09 02:56
cursor-tailable-001.phpt
1.78
KB
-rw-r--r--
2025-04-09 02:56
findAndModify-001.phpt
1.75
KB
-rw-r--r--
2025-04-09 02:56
update-001.phpt
1.66
KB
-rw-r--r--
2025-04-09 02:56
Save
Rename
--TEST-- MongoDB\Driver\Command construction should always encode __pclass for Persistable objects --SKIPIF-- <?php require __DIR__ . "/../utils/basic-skipif.inc"; ?> <?php skip_if_not_live(); ?> <?php skip_if_not_clean(); ?> --FILE-- <?php require_once __DIR__ . "/../utils/basic.inc"; class MyClass implements MongoDB\BSON\Persistable { private $id; private $child; public function __construct($id, ?MyClass $child = null) { $this->id = $id; $this->child = $child; } #[\ReturnTypeWillChange] public function bsonSerialize() { return [ '_id' => $this->id, 'child' => $this->child, ]; } public function bsonUnserialize(array $data): void { $this->id = $data['_id']; $this->child = $data['child']; } } $manager = create_test_manager(); $document = new MyClass('foo', new MyClass('bar', new MyClass('baz'))); $cursor = $manager->executeCommand(DATABASE_NAME, new MongoDB\Driver\Command([ 'findAndModify' => COLLECTION_NAME, 'query' => ['_id' => 'foo'], 'update' => $document, 'upsert' => true, 'new' => true, ])); var_dump($cursor->toArray()[0]->value); $cursor = $manager->executeCommand(DATABASE_NAME, new MongoDB\Driver\Command([ 'aggregate' => COLLECTION_NAME, 'pipeline' => [ ['$match' => $document], ], 'cursor' => new stdClass(), ])); var_dump($cursor->toArray()[0]); ?> ===DONE=== <?php exit(0); ?> --EXPECTF-- object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "foo" ["child":"MyClass":private]=> object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "bar" ["child":"MyClass":private]=> object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "baz" ["child":"MyClass":private]=> NULL } } } object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "foo" ["child":"MyClass":private]=> object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "bar" ["child":"MyClass":private]=> object(MyClass)#%d (%d) { ["id":"MyClass":private]=> string(3) "baz" ["child":"MyClass":private]=> NULL } } } ===DONE===