php漢字轉拼音 php 漢字取首字母
阿新 • • 發佈:2018-11-14
php漢字轉拼音 php 漢字取首字母
<?php /** * Class ConvertToPingYin * * 請到對應的網站申請轉換介面 * * https://www.showapi.com/api/lookPoint/99 */ class ConvertToPingYin { public function cpingyin($str) { //md5簽名方式--非簡單簽名 header("Content-Type:text/html;charset=UTF-8"); date_default_timezone_set("PRC"); $showapi_appid = '9918125'; //替換此值,在官網的"我的應用"中找到相關值 這個不能用自已去申請99 $showapi_secret = '99674547fde6b6497d94cbeb2e4200ebe2'; //替換此值,在官網的"我的應用"中找到相關值 這個不能用自已去申請99 $paramArr = array( 'showapi_appid' => $showapi_appid, 'content' => $str,'showapi_timestamp' => date("YmdHis") ); $param = $this->createParam($paramArr, $showapi_secret); $url = 'http://route.showapi.com/99-38?' . $param; // echo $url; $result = file_get_contents($url); $result = json_decode($result, true); if (!isset($pinyinarr['showapi_res_body']['data'])) { sleep(1); //迴圈時怕被封 } return $result; } public function createParam($paramArr, $showapi_secret) { $paraStr = ""; $signStr = ""; ksort($paramArr); foreach ($paramArr as $key => $val) { if ($key != '' && $val != '') { $signStr .= $key . $val; $paraStr .= $key . '=' . urlencode($val) . '&'; } } $signStr .= $showapi_secret;//排序好的引數加上secret,進行md5 $sign = strtolower(md5($signStr)); $paraStr .= 'showapi_sign=' . $sign;//將md5後的值作為引數,便於伺服器的效驗 // echo "排序好的引數:" . $paraStr . "<br>"; return $paraStr; } } $pingYin = new ConvertToPingYin(); $pinyinarr = $pingYin->cpingyin('中文'); if (isset($pinyinarr['showapi_res_body']['data'])) { $pinyin = $pinyinarr['showapi_res_body']['data']; //取得拼音 $initials = strtoupper(substr($pinyin, 0, 1)); //取得首字母 } var_dump($pinyinarr);