Using NuSoap works on local machine but not server
If you're out of troubleshooting ideas, and assuming you are running on Linux, you can watch the system calls by using strace. The calls can look pretty cryptic, but sometimes you can see what system call its hanging on, then Google that call for more info.
strace -p processid
Or if you want to trace your script from start of execution to finish and dump to an output file:
strace -o trace.txt myscript.php