<?php
/*
$Id: nusoap.php,v 1.75 2004/05/05 12:15:04 snichol Exp $
NuSOAP - Web Services Toolkit for PHP
Copyright (c) 2002 NuSphere Corporation
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
If you have any questions or comments, please email:
Dietrich Ayala
dietrich@ganx4.com
http://dietrich.ganx4.com/nusoap
NuSphere Corporation
http://www.nusphere.com
*/
/* load classes
// necessary classes
require_once('class.soapclient.php');
require_once('class.soap_val.php');
require_once('class.soap_parser.php');
require_once('class.soap_fault.php');
// transport classes
require_once('class.soap_transport_http.php');
// optional add-on classes
require_once('class.xmlschema.php');
require_once('class.wsdl.php');
// server class
require_once('class.soap_server.php');*/
/**
*
* nusoap_base
*
* @author Dietrich Ayala <dietrich@ganx4.com>
* @version $Id: nusoap.php,v 1.75 2004/05/05 12:15:04 snichol Exp $
* @access public
*/
class nusoap_base {
var $title = 'NuSOAP';
var $version = '0.6.7';
var $revision = '$Revision: 1.75 $';
var $error_str = false;
var $debug_str = '';
// toggles automatic encoding of special characters as entities
// (should always be true, I think)
var $charencoding = true;
/**
* set schema version
*
* @var XMLSchemaVersion
* @access public
*/
var $XMLSchemaVersion = 'http://www.w3.org/2001/XMLSchema';
/**
* set charset encoding for outgoing messages
*
* @var soap_defencoding
* @access public
*/
//var $soap_defencoding = 'UTF-8';
var $soap_defencoding = 'ISO-8859-1';
/**
* load namespace uris into an array of uri => prefix
*
* @var namespaces
* @access public
*/
var $namespaces = array(
'SOAP-ENV' => 'http://schemas.xmlsoap.org/soap/envelope/',
'xsd' => 'http://www.w3.org/2001/XMLSchema',
'xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
'SOAP-ENC' => 'http://schemas.xmlsoap.org/soap/encoding/',
'si' => 'http://soapinterop.org/xsd');
var $usedNamespaces = array();
/**
* load types into typemap array
* is this legacy yet?
* no, this is used by the xmlschema class to verify type => namespace mappings.
* @var typemap
* @access public
*/
var $typemap = array(
'http://www.w3.org/2001/XMLSchema' => array(
'string'=>'string','boolean'=>'boolean','float'=>'double','double'=>'double','decimal'=>'double',
'duration'=>'','dateTime'=>'string','time'=>'string','date'=>'string','gYearMonth'=>'',
'gYear'=>'','gMonthDay'=>'','gDay'=>'','gMonth'=>'','hexBinary'=>'string','base64Binary'=>'string',
// derived datatypes
'normalizedString'=>'string','token'=>'string','language'=>'','NMTOKEN'=>'','NMTOKENS'=>'','Name'=>'','NCName'=>'','ID'=>'',
'IDREF'=>'','IDREFS'=>'','ENTITY'=>'','ENTITIES'=>'','integer'=>'integer','nonPositiveInteger'=>'integer',
'negativeInteger'=>'integer','long'=>'integer','int'=>'integer','short'=>'integer','byte'=>'integer','nonNegativeInteger'=>'integer',
'unsignedLong'=>'','unsignedInt'=>'','unsignedShort'=>'','unsignedByte'=>'','positiveInteger'=>''),
'http://www.w3.org/1999/XMLSchema' => array(
'i4'=>'','int'=>'integer','boolean'=>'boolean','string'=>'string','double'=>'double',
'float'=>'double','dateTime'=>'string',
'timeInstant'=>'string','base64Binary'=>'string','base64'=>'string','ur-type'=>'array'),
'http://soapinterop.org/xsd' => array('SOAPStruct'=>'struct'),
'http://schemas.xmlsoap.org/soap/encoding/' => array('base64'=>'string','array'=>'array','Array'=>'array'),
'http://xml.apache.org/xml-soap' => array('Map')
);
/**
* entities to convert
*
* @var xmlEntities
* @access public
*/
var $xmlEntities = array('quot' => '"','amp' => '&',
'lt' => '<','gt' => '>','apos' => "'");
/**
* adds debug data to the class level debug string
*
* @param string $string debug data
* @access private
*/
function debug($string){
$this->debug_str .= get_class($this).": $string\n";
}
/**
* expands entities, e.g. changes '<' to '<'.
*
* @param string $val The string in which to expand entities.
* @access private
*/
function expandEntities($val) {
if ($this->charencoding) {
$val = str_replace('&', '&', $val);
$val = str_replace("'", ''', $val);
$val = str_replace('"', '"', $val);
$val = str_replace('<', '<', $val);
$val = str_replace('>', '>', $val);
}
return $val;
}
/**
* returns error string if present
*
* @return boolean $string error string
* @access public
*/
function getError(){
if($this->error_str != ''){
return $this->error_str;
}
return false;
}
/**
* sets error string
*
* @return boolean $string error string
* @access private
*/
function setError($str){
$this->error_str = $str;
}
/**
* detect if array is a simple array or a struct (associative array)
*
* @param $val The PHP array
* @return string (arraySimple|arrayStruct)
* @access private
*/
function isArraySimpleOrStruct($val) {
$keyList = array_keys($val);
foreach ($keyList as $keyListValue) {
if (!is_int($keyListValue)) {
return 'arrayStruct';
}
}
return 'arraySimple';
}
/**
* serializes PHP values in accordance w/ section 5. Type information is
* not serialized if $use == 'literal'.
*
* @return string
* @access public
*/
function serialize_val($val,$name=false,$type=false,$name_ns=false,$type_ns=false,$attributes=false,$use='encoded'){
if(is_object($val) && get_class($val) == 'soapval'){
return $val->serialize($use);
}
$this->debug( "in serialize_val: $val, $name, $type, $name_ns, $type_ns, $attributes, $use");
// if no name, use item
$name = (!$name|| is_numeric($name)) ? 'soapVal' : $name;
// if name has ns, add ns prefix to name
$xmlns = '';
if($name_ns){
$prefix = 'nu'.rand(1000,9999);
$name = $prefix.':'.$name;
$xmlns .= " xmlns:$prefix=\"$name_ns\"";
}
// if type is prefixed, create type prefix
if($type_ns != '' && $type_ns == $this->namespaces['xsd']){
// need to fix this. shouldn't default to xsd if no ns specified
// w/o checking against typemap
$type_prefix = 'xsd';
} elseif($type_ns){
$type_prefix = 'ns'.rand(1000,9999);
$xmlns .= " xmlns:$type_prefix=\"$type_ns\"";
}
// serialize attributes if present
$atts = '';
if($attributes){
foreach($attributes as $k => $v){
$atts .= " $k=\"$v\"";
}
}
// serialize if an xsd built-in primitive type
if($type != '' && isset($this->typemap[$this->XMLSchemaVersion][$type])){
if (is_bool($val)) {
if ($type == 'boolean') {
$val = $val ? 'true' : 'false';
} elseif (! $val) {
$val = 0;
}
} else if (is_string($val)) {
$val = $this->expandEntities($val);
}
if ($use == 'literal') {
return "<$name$xmlns>$val</$name>";
} else {
return "<$name$xmlns xsi:type=\"xsd:$type\">$val</$name>";
}
}
// detect type and serialize
$xml = '';
switch(true) {
case ($type == '' && is_null($val)):
if ($use == 'literal') {
// TODO: depends on nillable
$xml .= "<$name$xmlns/>";
} else {
$xml .= "<$name$xmlns xsi:nil=\"true\"/>";
}
break;
case (is_bool($val) || $type == 'boolean'):
if ($type == 'boolean') {
$
没有合适的资源?快使用搜索试试~ 我知道了~
phpweb代理平台V2.1.2 2017最新版 代理平台9001
共3182个文件
gif:1115个
htm:621个
php:556个
需积分: 9 13 下载量 111 浏览量
2017-12-20
22:02:11
上传
评论
收藏 4.42MB ZIP 举报
温馨提示
phpweb代理平台V2.1.2 2017最新版 代理平台9001,成品网站源码,成品网站代理平台
资源推荐
资源详情
资源评论
收起资源包目录
phpweb代理平台V2.1.2 2017最新版 代理平台9001 (3182个子文件)
changelog 14KB
pe.css 19KB
style.css 14KB
style.css 9KB
style.css 9KB
style.css 7KB
style.css 7KB
style.css 7KB
style.css 6KB
style.css 6KB
style.css 5KB
style.css 5KB
style.css 5KB
style.css 5KB
style.css 5KB
common.css 4KB
maqcontent.css 4KB
member.css 3KB
newscontent.css 3KB
newscontent_portal.css 3KB
downcontent.css 3KB
commentcontent_pw.css 3KB
commentcontent.css 2KB
tempquery_main.css 2KB
templistall.css 2KB
webmallorder.css 2KB
style.css 2KB
tempquery.css 2KB
K.css 2KB
A.css 2KB
B.css 2KB
L.css 2KB
C.css 2KB
N.css 2KB
M.css 2KB
O.css 2KB
E.css 2KB
G.css 2KB
P.css 2KB
J.css 2KB
I.css 2KB
H.css 2KB
F.css 2KB
D.css 2KB
photopollquery.css 2KB
L.css 2KB
C.css 2KB
B.css 2KB
N.css 2KB
M.css 2KB
O.css 2KB
G.css 2KB
P.css 2KB
J.css 2KB
K.css 2KB
I.css 2KB
H.css 2KB
D.css 2KB
A.css 2KB
E.css 2KB
F.css 2KB
newsquery_cap.css 2KB
newsmemoquery.css 2KB
downquerymemo.css 2KB
maqquery.css 2KB
prodcontent.css 2KB
downquery.css 2KB
newsquery.css 2KB
newsmember.css 2KB
downmember.css 2KB
webmallbuy.css 2KB
advslb.css 2KB
commentquery.css 2KB
downquery_auth_cat.css 2KB
L.css 2KB
N.css 2KB
M.css 2KB
O.css 2KB
P.css 2KB
K.css 2KB
C.css 2KB
B.css 2KB
E.css 2KB
G.css 2KB
J.css 2KB
I.css 2KB
H.css 2KB
F.css 2KB
D.css 2KB
A.css 2KB
comment.css 2KB
comment.css 2KB
mulclass.css 2KB
qqmenu.css 2KB
G.css 1KB
H.css 1KB
I.css 1KB
L.css 1KB
N.css 1KB
M.css 1KB
共 3182 条
- 1
- 2
- 3
- 4
- 5
- 6
- 32
资源评论
qq_41476222
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于SpringBoot+vue的社区医院管理系统.zip
- 锂电池SOC估计基于二阶RC模型的扩展卡尔曼滤波估算SOC 验证工况:HPPC 和 1C放电
- c#轻量级高并发物联网服务器接收程序源码(仅仅是接收硬件数据程序,没有web端,不是java,协议自己写,如果问及这些问题统统不回复 ),对接几万个设备没问题,数据库采用ef6+sqlite,可改e
- CityGPT: Empowering Urban Spatial Cognition of Large Language Models
- 平安夜祝福代码html 代码实现示例.docx
- java(二叉树的基本操作和部分二叉树相关的题)
- Spring Boot 整合 RabbitMQ(在Spring项目中使用RabbitMQ)
- 三菱Fx3U三轴定位控制程序,其中两轴为脉冲输出同步运行360度转盘,3轴为工作台丝杆 1.本程序结构清晰,有公共程序,原点回归,手动点动运行,手动微动运行 报警程序,参数初始化程序等 2.自动
- armv7l的树莓派可以用的onnxruntime版本
- 纸袋检测15-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- Yealink VC Desktop1.28.0.72, 免费,局域网,IP电话, SIP, VOIP, 视频通话,可与手机互通,手机上也安装 yealink
- 全自动棒料加工自动设备sw17全套技术开发资料100%好用.zip
- 用Jenkins 跑gitte仓库中的postman脚本 请求
- Instruction Pre-Training: Language Models are Supervised Multitask Learners
- 图片转PDF_QQ浏览器_20241226.pdf
- STM8驱动的MPU6050陀螺仪源程序
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功