Вот упрощённые Я знаю код, который следует, не идеально чистый, но для тестаструктура классов с использованием SoapClient
Code1:
<?PHP
abstract class webservice
{
protected $url;
var $clientSoap;
public function affectation_base($url_p)
{
ini_set('soap.wsdl_cache_enabled',0);
ini_set('soap.wsdl_cache_ttl',0);
$this->url=$url_p;
$clientSoap = new SoapClient('wdsl_adress');
}
public function get_fonction()
{
$clientSOAP = new SoapClient('wdsl_adress');
$sestruct = new stdClass();
$sestruct->value = "test";
var_dump($clientSOAP->MD5($sestruct));
}
abstract protected function getValue();
}
class Webservice_2 extends webservice
{
public function __construct($url_p)
{
$this->affectation_base($url_p);
}
function getValue()
{}
}
$wbs = new Webservice_2('wdsl_adress');
$wbs->getValue();
$wbs->get_fonction();
?>
Кодекса2:
<?PHP
abstract class webservice
{
protected $url;
var $clientSoap;
public function affectation_base($url_p)
{
ini_set('soap.wsdl_cache_enabled',0);
ini_set('soap.wsdl_cache_ttl',0);
$this->url=$url_p;
$clientSoap = new SoapClient('wdsl_adress');
}
public function get_fonction()
{
$sestruct = new stdClass();
$sestruct->value = "test";
var_dump($clientSOAP->MD5($sestruct));
}
abstract protected function getValue();
}
class Webservice_2 extends webservice
{
public function __construct($url_p)
{
$this->affectation_base($url_p);
}
function getValue()
{}
}
$wbs = new Webservice_2('wdsl_adress');
$wbs->getValue();
$wbs->get_fonction();
?>
" Code1 "
" Код2 "не работает:
PHP Фатальная ошибка: Вызов функции-члена MD5() на не-объект в E: \ test.php в строке 20
Line 20 является var_dump();
линия
Я не понимаю, почему использование $clientSOAP->MD5
является проблемой Какое правильное решение? Заранее спасибо
Ps: простите меня, если я говорю очень хорошо английский, это не мой язык