Deprecated: Optional parameter $keys declared before required parameter $cms_id is implicitly treated as a required parameter in /home/www/dev/work/class/blog/CmsKey.php on line 75

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$title is deprecated in /home/www/dev/work/website/lvesu/class/controller/blog/php.php on line 28

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$outlink is deprecated in /home/www/dev/work/website/lvesu/template/blog/cms/php.manual.tpl on line 2

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\php::$status is deprecated in /home/www/dev/work/website/lvesu/template/blog/index.head.php on line 2
PHP - Manual: SoapServer::setClass - 互联网笔记

略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: SoapServer::setClass

2025-04-28

SoapServer::setClass

(PHP 5, PHP 7, PHP 8)

SoapServer::setClassSets the class which handles SOAP requests

说明

public SoapServer::setClass(string $class, mixed ...$args): void

Exports all methods from specified class.

The object can be made persistent across request for a given PHP session with the SoapServer::setPersistence() method.

参数

class

The name of the exported class.

args

These optional parameters will be passed to the default class constructor during object creation.

返回值

没有返回值。

参见

添加备注

用户贡献的备注 2 notes

up
4
Ariz Jacinto
16 years ago
If you want your SOAP client to be able to save and then retrieve the object properties, you need to set the SOAP server to be persistent by setting session.auto_start=0, invoking session_start(), and SoapServer->setPersistence(SOAP_PERSISTENCE_SESSION) in the following manner:

<?php
//set ini
ini_set("soap.wsdl_cache_enabled", 0);
ini_set("session.auto_start", 0);

//class file
require_once('MyClass.php');

//for persistent session
session_start();

//service
$server = new SoapServer('service.wsdl');
$server->setClass("MyClass");
$server->setPersistence(SOAP_PERSISTENCE_SESSION);
$server->handle();
?>
up
3
christiaan at oakfox dot net
15 years ago
You can also retrieve object properties the following way while using __autoload($class_name).

<?php

# Start Session
session_start();

# Auto Load Class as Required
function __autoload($class_name)
{
require_once
"/var/www/example/class/". $class_name. ".php";
}

//service

$_SESSION[_bogus_session_name] = unserialize($_SESSION[_bogus_session_name]);
$server = new SoapServer('service.wsdl');
$server->setClass("MyClass");
$server->setPersistence(SOAP_PERSISTENCE_SESSION);
$server->handle();
$_SESSION[_bogus_session_name] = serialize($_SESSION[_bogus_session_name])

?>

官方地址:https://www.php.net/manual/en/soapserver.setclass.php

冷却塔厂家 广告
中文GPT4.0无需注册 广告
北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3