lighttpd + php5.2 + pear soap으로 서비스를 하는데 pear soap에서 complex type 선언할때
방법을 찾는데 좀 헤맸다.
$this->__dispatch_map['hello'] = array( 'in' => array('name' => 'string'), 'out' => array('ret' => '{'.$this->__ns.'}ArrayOfIHello'));
$this->__typedef['{'.$this->__ns.'}StringOfHello'] = array( 'a' => 'int', 'b' => 'string', 'c' => 'string', 'd' => 'string', 'e' => 'string' );
$this->__typedef['{'.$this->__ns.'}ArrayOfHello'] = array(array('StringOfHello'=>'{'.$this->__ns.'}StringOfHello'));
요런식으로 선언하면 c# 에서는 StringOfHello 로 받아서 처리하면된다. 편하다 -_-;
aaa.StringOfHello[] strs = svr.hello(tname);
String[] temp = new String[5];
foreach (aaa.StringOfHello str in strs)
{
temp[0] = str.a.ToString();
temp[1] = str.b;
temp[2] = str.c;
temp[3] = str.d;
temp[4] = str.e;
// dataGridView1.Rows.Add(temp);
}