三竹簡訊背景通知除錯

客戶發現簡訊寄出後發送紀錄的狀態都沒有改變,檢查後原來是 msgid 對不上,因此找不到應該更新的紀錄 ID。當第一次呼叫三竹 API 會回傳字串 msgid=12345,我以為 這個 msgid 一定是數字,所以用 preg_replace 去抓數字的部分來紀錄,但該客戶的 msgid 長這樣:msgid=#ABC123,有英文、數字、跟井字號,因此還是要確實抓到等號後面的值才行。

三竹 API 的回傳結果是用換行區分的字串,需要先做 explode 再來取得 msgid 等號後面的文字:

<?php
// API 回傳結果
$response = '[1]
msgid=#ABC123
statuscode=1
AccountPoint=999';
$result = explode( PHP_EOL, wp_remote_retrieve_body( $response ) );
$msgid  = substr( $result[1], strpos( $result[1], '=' ) + 1 ); // #ABC123

這種只傳字串回來的方式對開發者來說不太友善,還是要傳物件或陣列比較好處理些。

AI 文章延伸

讓 AI 幫你讀這篇文章

選擇平台後會自動帶入閱讀脈絡,快速整理重點、補齊盲點,並延伸到同站相關文章。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料