Чтобы использовать DataTable, вызывающим точкам (php и .net 1.1) необходимо знать, как десериализовать его в пригодный для использования объект.
Это означает, что у них должен быть подобный объект, в который данные могут быть десериализованы.
Очевидно, что PHP не может этого сделать. И причина ошибки .net 1.1 в том, что объект DataTable несколько изменился между 1.1 и 2.0. Фактически, Microsoft утверждает, что объект с данными .Net 1.1 BY BYIGN не должен сериализоваться через веб-сервис. ([http://support.microsoft.com/kb/306134][1])
Если вы ищете реальный межъязыковой способ сделать это, вам нужно сериализовать ваш ответ в стандартный объект XML. Который может быть правильно проанализирован любым языком. Это немного больше работы, но в результате получается полезный сервис.