Независимо дали съхранявате празен обект или масив, каква е разликата? В BSON масивите и обектите се съхраняват по същия начин, като dict . Както и да е, на вашия въпрос.
За драйвера на PHP MongoDB празен масив е точно това, празен масив, така че той го съхранява като масив. Когато добавите двойка ключ/стойност към масива, това е начина, по който драйверът разбира, че трябва да съхранява обект.
Ако наистина искате да съхраните празен обект, опитайте :
$d = new \stdClass();
$collection->insert(array('z' => $d));