Aynen ^ kalmış aklımda üssü ** olacak.
<?php
$limit = 10;
$array = [];
for($i=0;$i<=$limit;$i++){
$array[] = 2**($i);
if($i!=0){$array[] = 2**($i);
}
}
echo implode(",",$array);
?>

//Output: 1,2,2,4,4,8,8,16,16,32,32,64,64,128,128,256,256,512,512