本文整理汇总了PHP中Tygh\Http::processMultiRequest方法的典型用法代码示例。如果您正苦于以下问题:PHP Http::processMultiRequest方法的具体用法?PHP Http::processMultiRequest怎么用?PHP Http::processMultiRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tygh\Http
的用法示例。
在下文中一共展示了Http::processMultiRequest方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getRates
/**
* Sends requests to real-time services and process responses.
*
* @return array Shipping method rates list
*/
public static function getRates()
{
$_services = array('multi' => array(), 'simple' => array());
if (empty(self::$_services_stack)) {
return array();
}
if (self::_checkMultithreading()) {
foreach (self::$_services_stack as $shipping_key => $service_object) {
if ($service_object->allowMultithreading()) {
$key = 'multi';
} else {
$key = 'simple';
}
$_services[$key][$shipping_key] = $service_object;
}
} else {
$_services['simple'] = self::$_services_stack;
}
if (!empty($_services['multi'])) {
foreach ($_services['multi'] as $shipping_key => $service_object) {
$data = $service_object->getRequestData();
$headers = empty($data['headers']) ? array() : $data['headers'];
if ($data['method'] == 'post') {
Http::mpost($data['url'], $data['data'], array('callback' => array('\\Tygh\\Shippings\\RealtimeServices::multithreadingCallback', $shipping_key), 'headers' => $headers));
} else {
Http::mget($data['url'], $data['data'], array('callback' => array('\\Tygh\\Shippings\\RealtimeServices::multithreadingCallback', $shipping_key), 'headers' => $headers));
}
}
Http::processMultiRequest();
}
if (!empty($_services['simple'])) {
foreach ($_services['simple'] as $shipping_key => $service_object) {
$response = $service_object->getSimpleRates();
self::multithreadingCallback($response, $shipping_key);
}
}
return self::$_rates;
}
示例2: checkUpgrades
/**
* Checks and download upgrade schemas if available. Shows notification about new upgrades.
* Uses data from the Upgrade Connectors.
*
* @param bool $show_upgrade_notice Flag that determines whether or not the message about new upgrades
*/
public function checkUpgrades($show_upgrade_notice = true)
{
$connectors = $this->getConnectors();
if (!empty($connectors)) {
foreach ($connectors as $_id => $connector) {
$data = $connector->getConnectionData();
$headers = empty($data['headers']) ? array() : $data['headers'];
if ($data['method'] == 'post') {
Http::mpost($data['url'], $data['data'], array('callback' => array(array(), $_id, $show_upgrade_notice), 'headers' => $headers));
} else {
Http::mget($data['url'], $data['data'], array('callback' => array(array($this, 'processResponses'), $_id, $show_upgrade_notice), 'headers' => $headers));
}
}
Http::processMultiRequest();
}
}