Hirdetés
- A legújabb iPhone kiegészítő egy zokni, amit magunkra akaszthatunk
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Kezünkben a OnePlus 15 és az Oppo Find X9-ek
- Okosóra és okoskiegészítő topik
- Samsung Galaxy S22 Ultra - na, kinél van toll?
- Alma inspirálja ezt az olcsó ZTE-t is
- Google Pixel topik
- Milyen okostelefont vegyek?
- Xiaomi 15T Pro - a téma nincs lezárva
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
"ha en asszociativ tombot adok at parameterul, akkor azt struct tipusunak kell definialni a serveren, valamint az indexeket egyesevel meg kell adni neki tipussal egyutt"
Jaja, persze, a példában, amit korábban linkeltem, szintén ilyen van, ott konkrétan a Stuffs egy struct típus, az id és name elemekkel, és mindez NuSOAP-pal deklarálva a következő:$server->wsdl->addComplexType(
// name
'Stuffs',
// typeClass (complexType|simpleType|attribute)
'complexType',
// phpType: currently supported are array and struct (php assoc array)
'struct',
// compositor (all|sequence|choice)
'all',
// restrictionBase namespace:name (http://schemas.xmlsoap.org/soap/encoding/:Array)
'',
// elements = array ( name = array(name=>'',type=>'') )
array(
'id' => array(
'name' => 'id',
'type' => 'xsd:int'
),
'name' => array(
'name' => 'name',
'type' => 'xsd:string'
)
)
);De mindez még nálam nem volt elég, mert ezeknek a struct-oknak a tömbjét szerettem volna visszaadni (tehát a Stuffs struct-okból álló tömböt, melynek a neve itt StuffsArray):
$server->wsdl->addComplexType(
// name
'StuffsArray',
// typeClass (complexType|simpleType|attribute)
'complexType',
// phpType: currently supported are array and struct (php assoc array)
'array',
// compositor (all|sequence|choice)
'',
// restrictionBase namespace:name (http://schemas.xmlsoap.org/soap/encoding/:Array)
'SOAP-ENC:Array',
// elements = array ( name = array(name=>'',type=>'') )
array(),
// attrs
array(
array(
'ref' => 'SOAP-ENC:arrayType',
'wsdl:arrayType' => 'tns:Stuffs[]'
)
),
// arrayType: namespace:name (http://www.w3.org/2001/XMLSchema:string)
'tns:Stuffs'
);Aztán még annyival bonyolítottam a dolgot, hogy a kliens kérésére visszaadott válasz szintén egy struct, ami tartalmazza a válaszkódot (responseCode) és a válaszként szánt üzenetet (responseMessage), amivel jelezhető a kommunikáció állapota (pl. hiba vagy épp a siker), ezenkívül tartalmazza az előbb említett StuffsArray-t is, ami hiba esetén NULL, siker esetén az említett struct-ok tömbje.
Ez kódban így nézett ki:$server->wsdl->addComplexType(
// name
'ResponseObject',
// typeClass (complexType|simpleType|attribute)
'complexType',
// phpType: currently supported are array and struct (php assoc array)
'struct',
// compositor (all|sequence|choice)
'all',
// restrictionBase namespace:name (http://schemas.xmlsoap.org/soap/encoding/:Array)
'',
// elements = array ( name = array(name=>'',type=>'') )
array
(
'responseCode' => array( 'type' => 'xsd:int'),
'responseMessage' => array( 'type' => 'xsd:string'),
'stuffArray' => array( 'type' => 'tns:StuffsArray'
// DON'T UNCOMMENT THE FOLLOWING COMMENTED LINES, BECAUSE THIS WAY IT DOESN'T WORK!!! - Left it in the code not to forget it....
// ,
// 'minOccurs' => '0',
// 'maxOccurs' => 'unbounded'
)
)
);Aztán még az ehhez tartozó getStuffs függvény is látható a kódban.
Elég bonyolult egy ilyen komplex WSDL-t jól legenerálni NuSOAP-pal, de végül is nem lehetetlen (csak jópár óra debuggolás).
Új hozzászólás Aktív témák
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- A legújabb iPhone kiegészítő egy zokni, amit magunkra akaszthatunk
- Battlefield 6
- Rendkívül ütőképesnek tűnik az újragondolt Apple tv
- One otthoni szolgáltatások (TV, internet, telefon)
- Soundbar, soundplate, hangprojektor
- Építő/felújító topik
- Tesla topik
- World of Tanks - MMO
- Linux haladóknak
- További aktív témák...
- Gamer PC-Számítógép. Csere-Beszámítás! R7 5800X / RTX 5060 / 32GB DDR4 / 1TB SSD
- LG UltraGear OLED 27GX790A-B . 480Hz . 0.03ms . 2560x1440 - Garancia 2028.07.07.
- ÚJszerű 1Hónapos Apple iPhone 17 256GB Black 1OO% ! még 11 Hó nemzetközi APPLE GaranciÁval
- iPhone 17 Pro Max Cosmic Orange 256GB BONTATLAN 3 ÉV MAGYAR GARANCIA! iCentre számlával!
- T14 Gen1 27% 14" FHD IPS érintő i7-10610U MX330 16GB 256GB NVMe ujjlolv új akku gar
- Azonnali készpénzes AMD Radeon RX 9000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
- GYÖNYÖRŰ iPhone Xs Max 256GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3537, 100% Akkumulátor
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Garancia / BONTATLAN NULL Perces
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


