建体彩网|中彩网双色球连号|
?
快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

和記娛樂和記怡情AG:使用PHP開發SCA和SDO

?

由開放的面向辦事架構聯合組織(OSOA)提議的,面向組件的架構(SCA)和辦事數據工具(SDO)已經成為了開拓面向辦事的架構的最新措施。開始時這些開拓只是集中在一些通用的開拓情況中,如Java和C++,今朝SCA和SDO已經開始進入到其他一些平臺,在這里我們將解說若何在PHP上包孕一些SOA技巧。

首先我們看看SDO能供給給你什么。在一個范例的PHP利用中,數據一半來自關系數據庫,然則假如這個利用法度榜樣后來不僅僅只是從這兒獲取數據,而是從一個通俗文本文件或者Web辦事中獲取數據呢?這個問題很繁雜,由于每種數據源都邑要求有自己的獲取要領。

在這種環境下,PHP中SDO供給了一種處置懲罰數據源的透明要領。它不是零丁的處置懲罰每種數據源,而是供給了一種統一的造訪數據工具的要領。這種歷程是經由過程數據造訪辦事(DAS)來完成的,它是SDO架構上的一種中介要領。讓我們看看一個PHP中的SDO哀求。

<?php

$providers = $company->shippingByGround;

foreach ($providers as $name => $value) {

echo "$name: $valuen";

}

?>

留意著末的哀求是若何處置懲罰未知的數據源的,你不知道這里數據是從哪里提取來的,只是應用了PHP的SDO款式來做一個查找,而細節是由DAS完成的,PHP今朝能夠支持獲取XML和關系數據庫的數據源。

SDO關心的是數據,而SCA應用了加倍通用的類和組件來完成同樣的透明要領。從任何PHP類中造訪已有的營業邏輯必要強制開拓者來環抱一類特定的假設來做設計嗎:邏輯是否已在別的一個本地PHP類中?是否在收集中存在了?是應用PHP編寫的嗎?

當以上提到的場景在各自的要求中是可滿意的話,那么每個都必要應用不合的措施處置懲罰。

應用SCA要領,邏輯在哪里寄放就無關緊要了,更不要提應用何種說話來實現。那你必然會說:“這不是和一個通俗的Web Service差不多么?沒什么不合啊!”那么我們舉個例子來看看PHP SCA組件里包孕了什么。

<?php

include "SCA/SCA.php";

/**

* Calculate a shipment price for a given customer using a specific provider

*

* @service

*/

class ShipmentQuote {

/**

* The customer discount fee service to use.

*

* @reference

* @binding.php ../DiscountFeeRate/Discoun和記娛樂和記怡情AGtFeeRate.php

*/

public $disco和記娛樂和記怡情AGuntFee;

/**

* The shipping service to use.

*

* @reference

* @binding.wsdl ../Shipper/ShipperQuote.wsdl

*/

public $shipper;

/**

* Get a quote for a given customer using a specific provider

*

* @param string $shipping The shipping company

* @param string $customer The customer requiring shipment, in order to 和記娛樂和記怡情AGobtain discount rate

* @return float The quote for a given customer using a certain shipping provider.

*/

function getQuote($shippingCo, $customer)

{

$rateShip = $this->shipper->getShippingPrice($shippingCo);

$rate = $this->discountFee->getDiscountRate($customer);

return $rate * $rateShip;

}

}

?>

上文中最關鍵的便是包孕@的語句部分,它們每個都供給了一種特定的SCA行徑。最上層的@service標識,表示裸露一個類作為辦事。在這個例子里,著末的getQuote函數將會是辦事裸露的獨一操作,經由過程應用@param和@return標識。

這個著末的辦事和記娛樂和記怡情AG的履行或者支配——將會被委托為一個PHP SCA運行時——將會將我們帶入一個創建WSDL條約的造訪點,就像你可以在收集辦事中看到的那樣。除了這種支配辦事的要領的簡單性以外,SCA模型的真實上風將會在你反省getQuote代碼時更加表現的顯著。

留意到兩個語句$this-<shipper->getShipp和記娛樂和記怡情AGingPrice($shippingCo)和$this->discountFee->getDiscountRate($customer),它們是基于類中前面的利用。每個利用被其支撐辦事鎖支持(由@reference和@binding標識來詳細操作)在$discountFee用例中,這將是一個PHP類,而在shipper的用例中,這將是一個標準的WSDL根基的辦事。

只管PHP的簡單和大年夜量用戶群體的支持使得它成為構建web利用的一個好的選擇,然則它在企業利用的很多場景中能力有限,現在經由過程增添SCA和SDO,供給了對PHP和以往技巧的強力支持,它也和其他主流說話一樣,可以介入到面向辦事的潮流中了。

免責聲明:以上內容源自網絡,版權歸原作者所有,如有侵犯您的原創版權請告知,我們將盡快刪除相關內容。

您可能還會對下面的文章感興趣:

建体彩网
宁夏11选5手机 u购彩苹果 中国广西快乐10分开奖结果分布图 天津11选5开奖记录 王中王资料一肖中特com 体球网旧版比旧版比分 纸牌麻将怎么发牌 甘肃快三开奖历史结果 极速快3彩票 刮刮乐附魔