IXR_ClientMulticall{}WP 1.5.0

IXR_ClientMulticall

Хуков нет.

Использование

$IXR_ClientMulticall = new IXR_ClientMulticall();
// use class methods

Методы

  1. public IXR_ClientMulticall( $server, $path = false, $port = 80 )
  2. public __construct( $server, $path = false, $port = 80 )
  3. public addCall( ...$args )
  4. public query( ...$args )

Заметки

  • Пакет: IXR

Список изменений

С версии 1.5.0 Введена.

Код IXR_ClientMulticall{} WP 6.5.2

class IXR_ClientMulticall extends IXR_Client
{
    var $calls = array();

	/**
	 * PHP5 constructor.
	 */
    function __construct( $server, $path = false, $port = 80 )
    {
        parent::IXR_Client($server, $path, $port);
        $this->useragent = 'The Incutio XML-RPC PHP Library (multicall client)';
    }

	/**
	 * PHP4 constructor.
	 */
	public function IXR_ClientMulticall( $server, $path = false, $port = 80 ) {
		self::__construct( $server, $path, $port );
	}

	/**
	 * @since 1.5.0
	 * @since 5.5.0 Formalized the existing `...$args` parameter by adding it
	 *              to the function signature.
	 */
    function addCall( ...$args )
    {
        $methodName = array_shift($args);
        $struct = array(
            'methodName' => $methodName,
            'params' => $args
        );
        $this->calls[] = $struct;
    }

	/**
	 * @since 1.5.0
	 * @since 5.5.0 Formalized the existing `...$args` parameter by adding it
	 *              to the function signature.
	 *
	 * @return bool
	 */
    function query( ...$args )
    {
        // Prepare multicall, then call the parent::query() method
        return parent::query('system.multicall', $this->calls);
    }
}