Check out this article:
The author suggests manually building the XML in the client payload, rather than asking NuSoap to build complex structures.
I tried it, and your experience may vary but I now have ASMX services working with a NuSoap client that I couldn't get working before. Rather than passing back complex structures, since I own the services, I passed back delimited strings and just parse them with normal PHP code. Again, I'm not asking NuSoap to do the heavy lifting so my success rate just improved by 100%. How will this work with more complex structures from services we don't own? Check the page and the info there should help to some extent.
So until the code can be improved this might help some of us to get just a little further.