亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? nusoap.php

?? 一個非常不錯的搜索程序,值的收藏! 用.NET開發
?? PHP
?? 第 1 頁 / 共 5 頁
字號:
	* @param    string $xml path or URL
    * @param string $type, (schema|xml)
	* @access   private
	*/
	function parseString($xml,$type){
		// parse xml string
		if($xml != ""){

	    	// Create an XML parser.
	    	$this->parser = xml_parser_create();
	    	// Set the options for parsing the XML data.
	    	xml_parser_set_option($this->parser, XML_OPTION_CASE_FOLDING, 0);

	    	// Set the object for the parser.
	    	xml_set_object($this->parser, $this);

	    	// Set the element handlers for the parser.
			if($type == "schema"){
		    	xml_set_element_handler($this->parser, 'schemaStartElement','schemaEndElement');
		    	xml_set_character_data_handler($this->parser,'schemaCharacterData');
			} elseif($type == "xml"){
				xml_set_element_handler($this->parser, 'xmlStartElement','xmlEndElement');
		    	xml_set_character_data_handler($this->parser,'xmlCharacterData');
			}

		    // Parse the XML file.
		    if(!xml_parse($this->parser,$xml,true)){
			// Display an error message.
				$errstr = sprintf('XML error parsing XML schema on line %d: %s',
				xml_get_current_line_number($this->parser),
				xml_error_string(xml_get_error_code($this->parser))
				);
				$this->debug($errstr);
				$this->debug("XML payload:\n" . $xml);
				$this->setError($errstr);
	    	}
            
			xml_parser_free($this->parser);
		} else{
			$this->debug('no xml passed to parseString()!!');
			$this->setError('no xml passed to parseString()!!');
		}
	}

	/**
	* start-element handler
	*
	* @param    string $parser XML parser object
	* @param    string $name element name
	* @param    string $attrs associative array of attributes
	* @access   private
	*/
	function schemaStartElement($parser, $name, $attrs) {
		
		// position in the total number of elements, starting from 0
		$pos = $this->position++;
		$depth = $this->depth++;
		// set self as current value for this depth
		$this->depth_array[$depth] = $pos;
		$this->message[$pos] = array('cdata' => ''); 
		if ($depth > 0) {
			$this->defaultNamespace[$pos] = $this->defaultNamespace[$this->depth_array[$depth - 1]];
		} else {
			$this->defaultNamespace[$pos] = false;
		}

		// get element prefix
		if($prefix = $this->getPrefix($name)){
			// get unqualified name
			$name = $this->getLocalPart($name);
		} else {
        	$prefix = '';
        }
		
        // loop thru attributes, expanding, and registering namespace declarations
        if(count($attrs) > 0){
        	foreach($attrs as $k => $v){
                // if ns declarations, add to class level array of valid namespaces
				if(ereg("^xmlns",$k)){
                	//$this->xdebug("$k: $v");
                	//$this->xdebug('ns_prefix: '.$this->getPrefix($k));
                	if($ns_prefix = substr(strrchr($k,':'),1)){
                		//$this->xdebug("Add namespace[$ns_prefix] = $v");
						$this->namespaces[$ns_prefix] = $v;
					} else {
						$this->defaultNamespace[$pos] = $v;
						if (! $this->getPrefixFromNamespace($v)) {
							$this->namespaces['ns'.(count($this->namespaces)+1)] = $v;
						}
					}
					if($v == 'http://www.w3.org/2001/XMLSchema' || $v == 'http://www.w3.org/1999/XMLSchema'){
						$this->XMLSchemaVersion = $v;
						$this->namespaces['xsi'] = $v.'-instance';
					}
				}
        	}
        	foreach($attrs as $k => $v){
                // expand each attribute
                $k = strpos($k,':') ? $this->expandQname($k) : $k;
                $v = strpos($v,':') ? $this->expandQname($v) : $v;
        		$eAttrs[$k] = $v;
        	}
        	$attrs = $eAttrs;
        } else {
        	$attrs = array();
        }
		// find status, register data
		switch($name){
			case 'all':
			case 'choice':
			case 'sequence':
				//$this->xdebug("compositor $name for currentComplexType: $this->currentComplexType and currentElement: $this->currentElement");
				$this->complexTypes[$this->currentComplexType]['compositor'] = $name;
				if($name == 'all' || $name == 'sequence'){
					$this->complexTypes[$this->currentComplexType]['phpType'] = 'struct';
				}
			break;
			case 'attribute':
            	//$this->xdebug("parsing attribute $attrs[name] $attrs[ref] of value: ".$attrs['http://schemas.xmlsoap.org/wsdl/:arrayType']);
            	$this->xdebug("parsing attribute " . $this->varDump($attrs));
            	if (isset($attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'])) {
					$v = $attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'];
					if (!strpos($v, ':')) {
						// no namespace in arrayType attribute value...
						if ($this->defaultNamespace[$pos]) {
							// ...so use the default
							$attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'] = $this->defaultNamespace[$pos] . ':' . $attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'];
						}
					}
            	}
                if(isset($attrs['name'])){
					$this->attributes[$attrs['name']] = $attrs;
					$aname = $attrs['name'];
				} elseif(isset($attrs['ref']) && $attrs['ref'] == 'http://schemas.xmlsoap.org/soap/encoding/:arrayType'){
					if (isset($attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'])) {
	                	$aname = $attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'];
	                } else {
	                	$aname = '';
	                }
				} elseif(isset($attrs['ref'])){
					$aname = $attrs['ref'];
                    $this->attributes[$attrs['ref']] = $attrs;
				}
                
				if(isset($this->currentComplexType)){
					$this->complexTypes[$this->currentComplexType]['attrs'][$aname] = $attrs;
				} elseif(isset($this->currentElement)){
					$this->elements[$this->currentElement]['attrs'][$aname] = $attrs;
				}
				// arrayType attribute
				if(isset($attrs['http://schemas.xmlsoap.org/wsdl/:arrayType']) || $this->getLocalPart($aname) == 'arrayType'){
					$this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
                	$prefix = $this->getPrefix($aname);
					if(isset($attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'])){
						$v = $attrs['http://schemas.xmlsoap.org/wsdl/:arrayType'];
					} else {
						$v = '';
					}
                    if(strpos($v,'[,]')){
                        $this->complexTypes[$this->currentComplexType]['multidimensional'] = true;
                    }
                    $v = substr($v,0,strpos($v,'[')); // clip the []
                    if(!strpos($v,':') && isset($this->typemap[$this->XMLSchemaVersion][$v])){
                        $v = $this->XMLSchemaVersion.':'.$v;
                    }
                    $this->complexTypes[$this->currentComplexType]['arrayType'] = $v;
				}
			break;
			case 'complexType':
				if(isset($attrs['name'])){
					$this->xdebug('processing named complexType '.$attrs['name']);
					$this->currentElement = false;
					$this->currentComplexType = $attrs['name'];
					$this->complexTypes[$this->currentComplexType] = $attrs;
					$this->complexTypes[$this->currentComplexType]['typeClass'] = 'complexType';
					if(isset($attrs['base']) && ereg(':Array$',$attrs['base'])){
						$this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
					} else {
						$this->complexTypes[$this->currentComplexType]['phpType'] = 'struct';
					}
				}else{
					$this->xdebug('processing unnamed complexType for element '.$this->currentElement);
					$this->currentComplexType = $this->currentElement . '_ContainedType';
					$this->currentElement = false;
					$this->complexTypes[$this->currentComplexType] = $attrs;
					$this->complexTypes[$this->currentComplexType]['typeClass'] = 'complexType';
					if(isset($attrs['base']) && ereg(':Array$',$attrs['base'])){
						$this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
					} else {
						$this->complexTypes[$this->currentComplexType]['phpType'] = 'struct';
					}
				}
			break;
			case 'element':
				// elements defined as part of a complex type should
				// not really be added to $this->elements, but for some
				// reason, they are
				if(isset($attrs['type'])){
					$this->xdebug("processing typed element ".$attrs['name']." of type ".$attrs['type']);
					$this->currentElement = $attrs['name'];
					$this->elements[ $attrs['name'] ] = $attrs;
					$this->elements[ $attrs['name'] ]['typeClass'] = 'element';
					if (!isset($this->elements[ $attrs['name'] ]['form'])) {
						$this->elements[ $attrs['name'] ]['form'] = $this->schemaInfo['elementFormDefault'];
					}
					$ename = $attrs['name'];
				} elseif(isset($attrs['ref'])){
					$ename = $attrs['ref'];
				} else {
					$this->xdebug("processing untyped element ".$attrs['name']);
					$this->currentElement = $attrs['name'];
					$this->elements[ $attrs['name'] ] = $attrs;
					$this->elements[ $attrs['name'] ]['typeClass'] = 'element';
					$this->elements[ $attrs['name'] ]['type'] = $this->schemaTargetNamespace . ':' . $attrs['name'] . '_ContainedType';
					if (!isset($this->elements[ $attrs['name'] ]['form'])) {
						$this->elements[ $attrs['name'] ]['form'] = $this->schemaInfo['elementFormDefault'];
					}
				}
				if(isset($ename) && $this->currentComplexType){
					$this->complexTypes[$this->currentComplexType]['elements'][$ename] = $attrs;
				}
			break;
			// we ignore enumeration values
			//case 'enumeration':
			//break;
			case 'import':
			    if (isset($attrs['schemaLocation'])) {
					//$this->xdebug('import namespace ' . $attrs['namespace'] . ' from ' . $attrs['schemaLocation']);
                    $this->imports[$attrs['namespace']][] = array('location' => $attrs['schemaLocation'], 'loaded' => false);
				} else {
					//$this->xdebug('import namespace ' . $attrs['namespace']);
                    $this->imports[$attrs['namespace']][] = array('location' => '', 'loaded' => true);
					if (! $this->getPrefixFromNamespace($attrs['namespace'])) {
						$this->namespaces['ns'.(count($this->namespaces)+1)] = $attrs['namespace'];
					}
				}
			break;
			case 'restriction':
				//$this->xdebug("in restriction for currentComplexType: $this->currentComplexType and currentElement: $this->currentElement");
				if($this->currentElement){
					$this->elements[$this->currentElement]['type'] = $attrs['base'];
				} elseif($this->currentSimpleType){
					$this->simpleTypes[$this->currentSimpleType]['type'] = $attrs['base'];
				} elseif($this->currentComplexType){
					$this->complexTypes[$this->currentComplexType]['restrictionBase'] = $attrs['base'];
					if(strstr($attrs['base'],':') == ':Array'){
						$this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
					}
				}
			break;
			case 'schema':
				$this->schemaInfo = $attrs;
				$this->schemaInfo['schemaVersion'] = $this->getNamespaceFromPrefix($prefix);
				if (isset($attrs['targetNamespace'])) {
					$this->schemaTargetNamespace = $attrs['targetNamespace'];
				}
				if (!isset($attrs['elementFormDefault'])) {
					$this->schemaInfo['elementFormDefault'] = 'unqualified';
				}
			break;
			case 'simpleType':
				if(isset($attrs['name'])){
					$this->xdebug("processing simpleType for name " . $attrs['name']);
					$this->currentSimpleType = $attrs['name'];
					$this->simpleTypes[ $attrs['name'] ] = $attrs;
					$this->simpleTypes[ $attrs['name'] ]['typeClass'] = 'simpleType';
					$this->simpleTypes[ $attrs['name'] ]['phpType'] = 'scalar';
				} else {
					//echo 'not parsing: '.$name;
					//var_dump($attrs);
				}
			break;
			default:
				//$this->xdebug("do not have anything to do for element $name");
		}
	}

	/**
	* end-element handler
	*
	* @param    string $parser XML parser object
	* @param    string $name element name
	* @access   private
	*/
	function schemaEndElement($parser, $name) {
		// bring depth down a notch
		$this->depth--;
		// position of current element is equal to the last value left in depth_array for my depth
		if(isset($this->depth_array[$this->depth])){
        	$pos = $this->depth_array[$this->depth];
        }
		// move on...
		if($name == 'complexType'){
			$this->currentComplexType = false;
			$this->currentElement = false;
		}
		if($name == 'element'){
			$this->currentElement = false;
		}
		if($name == 'simpleType'){
			$this->currentSimpleType = false;
		}
	}

	/**
	* element content handler
	*
	* @param    string $parser XML parser object
	* @param    string $data element content
	* @access   private
	*/
	function schemaCharacterData($parser, $data){
		$pos = $this->depth_array[$this->depth - 1];
		$this->message[$pos]['cdata'] .= $data;
	}

	/**
	* serialize the schema
	*
	* @access   public
	*/
	function serializeSchema(){

		$schemaPrefix = $this->getPrefixFromNamespace($this->XMLSchemaVersion);
		$xml = '';
		// imports
		if (sizeof($this->imports) > 0) {
			foreach($this->imports as $ns => $list) {
				foreach ($list as $ii) {
					if ($ii['location'] != '') {
						$xml .= " <$schemaPrefix:import location=\"" . $ii['location'] . '" namespace="' . $ns . "\" />\n";
					} else {
						$xml .= " <$schemaPrefix:import namespace=\"" . $ns . "\" />\n";
					}
				}
			} 
		} 
		// complex types
		foreach($this->complexTypes as $typeName => $attrs){
			$contentStr = '';
			// serialize child elements
			if(isset($attrs['elements']) && (count($attrs['elements']) > 0)){
				foreach($attrs['elements'] as $element => $eParts){
					if(isset($eParts['ref'])){
						$contentStr .= "   <$schemaPrefix:element ref=\"$element\"/>\n";
					} else {
						$contentStr .= "   <$schemaPrefix:element name=\"$element\" type=\"" . $this->contractQName($eParts['type']) . "\"/>\n";
					}
				}
			}
			// attributes
			if(isset($attrs['attrs']) && (count($attrs['attrs']) >= 1)){
				foreach($attrs['attrs'] as $attr => $aParts){
					$contentStr .= "    <$schemaPrefix:attribute ref=\"".$this->contractQName($aParts['ref']).'"';
					if(isset($aParts['http://schemas.xmlsoap.org/wsdl/:arrayType'])){
						$this->usedNamespaces['wsdl'] = $this->namespaces['wsdl'];
						$contentStr .= ' wsdl:arrayType="'.$this->contractQName($aParts['http://schemas.xmlsoap.org/wsdl/:arrayType']).'"';
					}
					$contentStr .= "/>\n";
				}
			}
			// if restriction
			if( isset($attrs['restrictionBase']) && $attrs['restrictionBase'] != ''){
				$contentStr = "   <$schemaPrefix:restriction base=\"".$this->contractQName($attrs['restrictionBase'])."\">\n".$contentStr."   </$schemaPrefix:restriction>\n";
			}
			// compositor obviates complex/simple content
			if(isset($attrs['compositor']) && ($attrs['compositor'] != '')){
				$contentStr = "  <$schemaPrefix:$attrs[compositor]>\n".$contentStr."  </$schemaPrefix:$attrs[compositor]>\n";
			}
			// complex or simple content
			elseif((isset($attrs['elements']) && count($attrs['elements']) > 0) || (isset($attrs['attrs']) && count($attrs['attrs']) > 0)){
				$contentStr = "  <$schemaPrefix:complexContent>\n".$contentStr."  </$schemaPrefix:complexContent>\n";
			}
			// finalize complex type
			if($contentStr != ''){
				$contentStr = " <$schemaPrefix:complexType name=\"$typeName\">\n".$contentStr." </$schemaPrefix:complexType>\n";
			} else {
				$contentStr = " <$schemaPrefix:complexType name=\"$typeName\"/>\n";
			}
			$xml .= $contentStr;
		}
		// simple types
		if(isset($this->simpleTypes) && count($this->simpleTypes) > 0){
			foreach($this->simpleTypes as $typeName => $attr){
				$xml .= " <$schemaPrefix:simpleType name=\"$typeName\">\n  <restriction base=\"".$this->contractQName($eParts['type'])."\"/>\n </$schemaPrefix:simpleType>";
			}
		}
		// elements
		if(isset($this->elements) && count($this->elements) > 0){
			foreach($this->elements as $element => $eParts){
				$xml .= " <$schemaPrefix:element name=\"$element\" type=\"".$this->contractQName($eParts['type'])."\"/>\n";
			}
		}
		// attributes
		if(isset($this->attributes) && count($this->attributes) > 0){
			foreach($this->attributes as $attr => $aParts){
				$xml .= " <$schemaPrefix:attribute name=\"$attr\" type=\"".$this->contractQName($aParts['type'])."\"\n/>";
			}
		}
		// finish 'er up
		$el = "<$schemaPrefix:schema targetNamespace=\"$this->schemaTargetNamespace\"\n";
		foreach (array_diff($this->usedNamespaces, $this->enclosingNamespaces) as $nsp => $ns) {
			$el .= " xmlns:$nsp=\"$ns\"\n";
		}
		$xml = $el . ">\n".$xml."</$schemaPrefix:schema>\n";
		return $xml;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国内一区二区三区| 97精品久久久午夜一区二区三区| 毛片一区二区三区| thepron国产精品| 日韩精品中文字幕一区| 中文字幕一区二区三区在线播放 | 狠狠网亚洲精品| 一本色道久久综合亚洲精品按摩| 正在播放亚洲一区| 亚洲免费资源在线播放| 精品亚洲欧美一区| 欧美丰满一区二区免费视频| 国产精品国产成人国产三级| 久久99蜜桃精品| 欧美片在线播放| 亚洲精品国产一区二区精华液 | 日本久久电影网| 亚洲国产精品成人久久综合一区| 日韩在线一区二区| 欧美在线观看视频在线| 国产精品私人影院| 国产一区二区影院| 精品成人一区二区三区| 视频一区中文字幕| 欧美日本一区二区在线观看| 综合婷婷亚洲小说| 成a人片国产精品| 国产亚洲一区二区在线观看| 日韩av电影天堂| 欧美日本一区二区三区| 亚洲午夜久久久| 欧美视频一区二区三区四区| 亚洲人被黑人高潮完整版| va亚洲va日韩不卡在线观看| 国产精品剧情在线亚洲| 国产凹凸在线观看一区二区| 久久久久高清精品| 国产九色精品成人porny| 精品免费视频一区二区| 久久成人免费电影| 26uuu亚洲综合色| 国内成人自拍视频| 久久久噜噜噜久久人人看 | 精品免费国产一区二区三区四区| 亚洲成人资源在线| 欧美精品色一区二区三区| 亚洲一线二线三线久久久| 欧美影视一区在线| 偷拍一区二区三区四区| 欧美一区二区三区在线观看| 日本不卡一二三区黄网| 久久综合色鬼综合色| 国产白丝精品91爽爽久久 | 成人av网在线| 亚洲情趣在线观看| 欧美精品久久99久久在免费线 | 日日摸夜夜添夜夜添国产精品| 欧美剧情片在线观看| 日本不卡一二三区黄网| 国产偷v国产偷v亚洲高清 | 激情偷乱视频一区二区三区| 精品国产污污免费网站入口| 国产成a人亚洲精品| 亚洲精品国产a| 日韩欧美高清在线| 波多野结衣的一区二区三区| 亚洲码国产岛国毛片在线| 欧美理论在线播放| 福利视频网站一区二区三区| 亚洲综合在线电影| 精品国产成人系列| 91看片淫黄大片一级在线观看| 视频一区二区中文字幕| 国产欧美综合在线观看第十页| 色婷婷精品大在线视频| 精油按摩中文字幕久久| 亚洲日本在线看| 欧美一级黄色录像| 色综合亚洲欧洲| 国产一区二区三区黄视频 | 欧美探花视频资源| 国产精品资源网| 亚洲国产成人av网| 国产视频不卡一区| 欧美日韩国产高清一区二区| 国产成人亚洲综合a∨猫咪| 一区二区三区免费| 国产免费成人在线视频| 91精品黄色片免费大全| 色综合久久久久网| 国产剧情在线观看一区二区| 日韩经典一区二区| 亚洲激情欧美激情| 国产精品久久久久久久岛一牛影视 | 欧美成人午夜电影| 在线观看日产精品| 99免费精品在线观看| 国产一区啦啦啦在线观看| 亚洲1区2区3区视频| 亚洲日本在线天堂| 国产精品丝袜久久久久久app| 欧美日韩一区视频| 91久久精品午夜一区二区| 成人三级伦理片| 韩国一区二区在线观看| 欧美aⅴ一区二区三区视频| 亚洲一区二三区| 一区二区三区四区激情| 国产精品不卡一区| 中文字幕国产精品一区二区| 久久综合九色欧美综合狠狠| 欧美一区日韩一区| 91精品久久久久久久99蜜桃| 欧美综合欧美视频| 欧美图区在线视频| 欧美三级视频在线观看 | 成人丝袜18视频在线观看| 国产美女精品人人做人人爽| 毛片av一区二区| 蜜臀精品久久久久久蜜臀| 日韩av电影天堂| 麻豆精品视频在线观看视频| 日本大胆欧美人术艺术动态| 午夜精品久久久久久久蜜桃app| 夜夜精品视频一区二区| 亚洲一级不卡视频| 无吗不卡中文字幕| 视频一区视频二区在线观看| 日产精品久久久久久久性色| 七七婷婷婷婷精品国产| 精品一区二区三区免费视频| 国产综合色在线| 成人福利在线看| 一本到高清视频免费精品| 欧美性感一类影片在线播放| 欧美日韩国产综合视频在线观看| 4438亚洲最大| 久久日韩粉嫩一区二区三区 | 亚洲视频精选在线| 亚洲精品乱码久久久久久黑人| 亚洲综合激情另类小说区| 亚洲mv大片欧洲mv大片精品| 日本不卡在线视频| 国产高清在线精品| 在线视频一区二区三| 欧美精选午夜久久久乱码6080| 欧美tickling网站挠脚心| 国产日韩欧美激情| 亚洲一区二区三区免费视频| 久热成人在线视频| 成人黄色av网站在线| 欧美视频在线观看一区| 久久你懂得1024| 亚洲午夜激情av| 韩国欧美一区二区| 欧洲精品一区二区三区在线观看| 欧美一区二区视频网站| 国产精品美女久久久久久| 天天综合网天天综合色| 成人av在线观| 欧美一区二区三区在线视频| 国产精品国产三级国产普通话蜜臀| 亚洲柠檬福利资源导航| 激情成人午夜视频| 在线观看亚洲专区| 欧美国产综合一区二区| 首页亚洲欧美制服丝腿| 99久久精品国产一区| 精品少妇一区二区三区| 夜夜爽夜夜爽精品视频| 成人一区在线观看| 欧美一区二区三区日韩| 亚洲品质自拍视频网站| 国产乱对白刺激视频不卡| 91.xcao| 亚洲综合一二区| 丁香婷婷综合色啪| 精品国产乱子伦一区| 亚洲第一成人在线| 日本道色综合久久| 中文字幕一区二区三区四区不卡| 久久99热这里只有精品| 91精品欧美综合在线观看最新| 国产精品国产三级国产aⅴ入口| 精品在线免费视频| 91麻豆精品国产91久久久更新时间| 亚洲美女区一区| av在线综合网| 国产精品伦理一区二区| 国产一区二区三区视频在线播放| 欧美一级免费观看| 日本美女视频一区二区| 欧美日韩国产精品成人| 亚洲一级二级在线| 欧美日韩久久不卡| 亚洲国产精品久久不卡毛片| 欧洲一区二区三区在线| 亚洲精品乱码久久久久久久久| 91色乱码一区二区三区| 综合久久久久久|