I would use exec() as there are a lot more ways of doing things and every option is available. Imagick is still limited to what options have been introduced and the instructions ( can not think of the proper word !! ) are still basic and in some cases incorrect.
If you wanted to use imagick the only way I can think of doing it would be to create a large canvas and put the first image on then add the second image save it and add the third image etc. getting the offsets by using getimagesize().
Again I can not remember the word ( concenate ? ) but you could write your code like:
exec('convert $image1 $image2 -gravity center -background black +append $result');
It depends what actual effect you are after.
I have examples of most of the Imagemagick operators using php here:Imagemagick operators
This function is EXPERIMENTAL. The behaviour of this function, the name of this function, and anything else documented about this function may change without notice in a future release of PHP. Use this function at your own risk.
A long winded way to do it would be to loop through the images and composite them.