Parametr w Twoim JavaScript to tablica 4 obiektów z jednym elementem każdy, w Twoim PHP jest to tablica asocjacyjna (obiekt) z 4 elementami. Będzie to reprezentować Twój Javascript:
$result = $c->aggregate(array(
array(
'$project' => array(
'day' => array('$dayOfYear' => '$executed')
),
),
array(
'$group' => array(
'_id' => array('day' => '$day'),
'n' => array('$sum' => 1)
),
),
array(
'$sort' => array(
'_id' => 1
),
),
array(
'$limit' => 14
)
));
Dodatkowo, jeśli masz przynajmniej PHP5.4, możesz użyć prostszej składni tablicy. Transformacja do PHP jest wtedy banalna, wystarczy zastąpić nawiasy klamrowe nawiasami kwadratowymi, a dwukropki strzałkami:
$result = $c->aggregate([
[ '$project' => [ 'day' => ['$dayOfYear' => '$executed'] ] ],
[ '$group' => ['_id' => ['day' => '$day'], 'n' => ['$sum' => 1] ] ],
[ '$sort' => ['_id' => 1] ],
[ '$limit' => 14 ]
]);