xref: /PHP-8.0/ext/soap/tests/schema/schema040.phpt (revision f8d79582)
1--TEST--
2SOAP XML Schema 40: Structure with attributes (inline types)
3--SKIPIF--
4<?php require_once('skipif.inc'); ?>
5--FILE--
6<?php
7include "test_schema.inc";
8$schema = <<<EOF
9    <complexType name="testType">
10        <sequence>
11            <element name="str" type="string"/>
12        </sequence>
13        <attribute name="int">
14            <simpleType>
15                <restriction base="int"/>
16            </simpleType>
17        </attribute>
18    </complexType>
19EOF;
20test_schema($schema,'type="tns:testType"',(object)array("str"=>"str","int"=>123.5));
21echo "ok";
22?>
23--EXPECTF--
24<?xml version="1.0" encoding="UTF-8"?>
25<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:test><testParam int="123" xsi:type="ns1:testType"><str xsi:type="xsd:string">str</str></testParam></ns1:test></SOAP-ENV:Body></SOAP-ENV:Envelope>
26object(stdClass)#%d (2) {
27  ["str"]=>
28  string(3) "str"
29  ["int"]=>
30  int(123)
31}
32ok
33