if the server is on unix, you could do:
$src = '/path/to/src';
$dest = '/path/to/dest';
system("mv $src $dest");
although I'm not a fan of using system calls, and you would need some regular expression checking on the filenames if they're coming from users, for security.
Otherwise, I wrote a function that works but seems very inefficient to me. If you're moving big files or a lot of files, I don't know that this is your best option. Any input on this is gladly welcome.
usage:
move_file( source, destination );
function move_file ( $source_file, $destination_file ) {
$source_fp = fopen ( $source_file, "r" );
$source_file_info = fread( $source_fp, filesize($source_file) );
fclose( $source_fp );
$dest_fp = fopen ( $destination_file, 'w+' );
$file_move = fwrite( $dest_fp, $source_file_info );
fclose( $dest_fp );
unlink ( $source_file );
}