copy() no copia carpetas enteras .. pero sí que puedes leer los archivos de X carpeta con el objeto predefinido dir() o usando los códigos que proponen en php.net (comentarios de los usuarios .. algunos incluso leen sub-directorios usando funciones con llamadas recursivas ..)
A todo esto (si hay que crear directorios) te hará falta mkdir() ..
En general .. repasa el manual oficial de PHP en el apartado de funciones para directorios/etc ..
http://www.php.net/manual/en/function.copy.php
(fijate ahí mismo en los comentarios de los usuarios .. tienes varías funciones para tal fin).
Un saludo,