什麼?在SAP中國研究院裡還需要會PHP開發?

i042416發表於2019-07-24

請原諒Jerry這篇文章的題目有“標題黨”的嫌疑。

沒錯,至少SAP成都研究院的部分團隊如此,比如Jerry目前就職的SAP成都研究院數字創新空間。

之前Jerry的文章, 曾經提到SAP Kyma(SAP Extension Factory on SAP Cloud Platform, SAP雲平臺擴充套件工廠),是SAP C/4HANA極為重要的擴充套件工具。

什麼?在SAP中國研究院裡還需要會PHP開發?

Jerry最近在嘗試一個基於Kyma的POC。

一個旅行達人伊森,每遊覽一個城市後喜歡寫一些圖文並茂的部落格,並上傳到社交媒體平臺上。伊森同時又是一個社交媒體達人,擁有Twitter,Facebook,Instagram,YouTube等眾多平臺賬號。伊森不得不把同一篇部落格一次又一次地手動搬運到不同的平臺上。終於有一天,伊森無法忍受這種無聊透頂的體力活了,找到Jerry尋求幫助。

Jerry給出瞭如下的解決方案:伊森以後只在一個部落格系統上寫文章,那就是基於PHP實現的WordPress系統。然後Jerry會把WordPress同Kyma連線起來,使得伊森在WordPress上發表的每一篇文章,都能通過Kyma自動同步到其他社交媒體平臺上。

什麼?在SAP中國研究院裡還需要會PHP開發?

具體的技術實現,就是用PHP對WordPress做一些擴充套件,讓WordPress能夠同Kyma的Application Connector連線起來。這樣每次WordPress上有"Post created(文章建立成功)"的事件丟擲後, Kyma都能夠監聽到這個事件。然後Jerry在Kyma上編寫一段程式碼,作為這個事件的處理函式,分別呼叫各大社交媒體平臺的文章建立API,即可完成部落格同步的任務。

什麼?在SAP中國研究院裡還需要會PHP開發?

從此伊森再也不用做那些浪費時間的體力活了,伊森很滿意,但Jerry卻有一些開發任務要做。

因為涉及到WordPress的增強,所以需要在本地搭一個WordPress的開發環境出來。

這使得Jerry從2004年大學本科開始正式程式設計以來,第一次有機會在專案中用到PHP,而提到“ PHP是世界上最好的語言 ”這個梗,程式設計師們總忍不住會心一笑。

什麼?在SAP中國研究院裡還需要會PHP開發?

先看下WordPress增強之後的效果。在WordPress設定頁面裡,多出來一個叫做Kyma Connector的配置選項,裡面可以定義同Kyma例項的連線細節。

什麼?在SAP中國研究院裡還需要會PHP開發?

Jerry後續會詳細介紹這個通過Kyma實現的社交媒體部落格同步方案的技術實現,本文只是記錄Jerry在本地搭建WordPress在Eclipse中的單步除錯環境的步驟——單步除錯對於應用開發的重要性,每位開發人員都深有體會。對此不感興趣的朋友們可以忽略。

首先安裝WampServer整合執行環境(簡稱WAMP),然後把github開源的WordPress原始碼拷貝到WAMP的Apache Web伺服器對應的www資料夾下:

什麼?在SAP中國研究院裡還需要會PHP開發?

然後用Eclipse的Import->General->Existing Projects into Workspace:

什麼?在SAP中國研究院裡還需要會PHP開發?

注意匯入時,不要選擇"Copy projects into workspace":

什麼?在SAP中國研究院裡還需要會PHP開發?

在Eclipse裡新建一個PHP執行環境,Executable path和PHP ini指向WAMP裡PHP資料夾裡對應的檔案:

什麼?在SAP中國研究院裡還需要會PHP開發?

Debugger選擇成XDebug:

什麼?在SAP中國研究院裡還需要會PHP開發?

在php.ini裡維護對應的xdebug設定:

什麼?在SAP中國研究院裡還需要會PHP開發?

[xdebug]

zend_extension = "C:/MyApp/wamp20190709/bin/php/php7.0.10/ext/php_xdebug-2.6.1-7.0-vc14.dll"

xdebug.remote_enable = On

;啟用效能檢測分析

xdebug.profiler_enable = On

;啟用程式碼自動跟蹤

xdebug.auto_trace=On

xdebug.profiler_enable_trigger = On

xdebug.profiler_output_name = cachegrind.out.%t.%p

;指定效能分析檔案的存放目錄

xdebug.profiler_output_dir ="C:/MyApp/wamp20190709/tmp"

xdebug.show_local_vars=0

;配置埠和監聽的域名

xdebug.remote_port=9000

xdebug.remote_host="localhost"

Eclipse裡新建一個PHP built-in server,Runtime Environment選擇成WAMP提供的PHP執行環境,埠改成和WAMP裡Apache Web伺服器監聽的埠號一致:

什麼?在SAP中國研究院裡還需要會PHP開發?

一切就緒之後,Debug As->Debug on Server:

什麼?在SAP中國研究院裡還需要會PHP開發?

彈出PHP Debug的對話方塊,當然是選擇Yes了:

什麼?在SAP中國研究院裡還需要會PHP開發?

斷點觸發了。

什麼?在SAP中國研究院裡還需要會PHP開發?

Happy Debugging!

什麼?在SAP中國研究院裡還需要會PHP開發?


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2651683/,如需轉載,請註明出處,否則將追究法律責任。

相關文章