>  기사  >  백엔드 개발  >  Alibaba(Alibaba Big Fish) PHP 버전의 SMS 전송 예제에 대한 자세한 설명

Alibaba(Alibaba Big Fish) PHP 버전의 SMS 전송 예제에 대한 자세한 설명

黄舟
黄舟원래의
2017-02-25 09:10:322608검색

이 기사의 예에서는 PHP 버전의 Alibaba(Alibaba Big Fish)에서 SMS 전송을 구현하는 방법을 설명합니다. 참고할 수 있도록 다음과 같이 모든 사람과 공유하세요.

일반 기능

// 发送大于短信 更牛逼的
  protected function sendDayuSmsPlus($tel,$type,$data) {
    $dayu_template = 'dayu_template_'.$type;
    $signname = C($dayu_template.".signname");
    $templatecode = C($dayu_template.".templatecode");
    // require LIB_PATH . 'ORG/Taobao-sdk-php/TopSdk.php';
    include_once LIB_PATH . 'ORG/Taobao-sdk-php/TopSdk.php';
    $c = new TopClient;
    $c->appkey = C('dayu_appkey');
    $c->secretKey = C('dayu_secretKey');
    $req = new AlibabaAliqinFcSmsNumSendRequest;
    $req->setSmsType("normal");
    $req->setSmsFreeSignName("{$signname}");
    if ($type == 'sold') {
      $req->setSmsParam('{"name":"'. $data['name'] .'"}');
    }
    if ($type == 'buysuccess') {
      $req->setSmsParam('{"name":"'. $data['name'] .'","product":"'. $data['product'] .'"}');
    }
    if ($type == 'newagent') {
      $req->setSmsParam('{"name":"'. $data['name'] .'"}');
    }
    $req->setRecNum("{$tel}");
    $req->setSmsTemplateCode("{$templatecode}");
    $resp = $c->execute($req);
    return $resp;
  }



최적화

// 发送大于短信 更牛逼的
  protected function sendDayuSmsPlus($tel,$type,$data) {
    $dayu_template = 'dayu_template_'.$type;
    $signname = C($dayu_template.".signname");
    $templatecode = C($dayu_template.".templatecode");
    // require LIB_PATH . 'ORG/Taobao-sdk-php/TopSdk.php';
    include_once LIB_PATH . 'ORG/Taobao-sdk-php/TopSdk.php';
    $c = new TopClient;
    $c->appkey = C('dayu_appkey');
    $c->secretKey = C('dayu_secretKey');
    $req = new AlibabaAliqinFcSmsNumSendRequest;
    $req->setSmsType("normal");
    $req->setSmsFreeSignName("{$signname}");
    switch($type) {
      case 'sold':
        $req->setSmsParam('{"name":"'. $data['name'] .'"}');
        break;
      case 'buysuccess':
        $req->setSmsParam('{"name":"'. $data['name'] .'","product":"'. $data['product'] .'"}');
        break;
      case 'newagent':
        $req->setSmsParam('{"name":"'. $data['name'] .'"}');
        break;
      default:
         $req->setSmsParam('{"code":"'. $data['code'] .'","product":"'. $data['product'] .'"}');
    }
    $req->setRecNum("{$tel}");
    $req->setSmsTemplateCode("{$templatecode}");
    $resp = $c->execute($req);
    return $resp;
  }



여기에도 require와 include_once의 차이가 있습니다. require를 사용하고 메서드를 반복적으로 호출하면 오류가 보고됩니다. 치명적인 오류: 클래스를 다시 선언할 수 없습니다. include_once로 변경하면 됩니다.

구성 템플릿

<?php
return array (
 // 阿里大鱼短信配置
 &#39;dayu_appkey&#39;=>&#39;xxxxxx&#39;,
 &#39;dayu_secretKey&#39;=>&#39;xxxxxxxxxxxxxxxxxxxxx&#39;,
 &#39;dayu_template_register&#39; => array(&#39;signname&#39;=>&#39;注册验证&#39;,&#39;templatecode&#39;=>&#39;SMS_9655457&#39;),
 &#39;dayu_template_alteration&#39; => array(&#39;signname&#39;=>&#39;变更验证&#39;,&#39;templatecode&#39;=>&#39;SMS_9655454&#39;),
 &#39;dayu_template_identity&#39; => array(&#39;signname&#39;=>&#39;身份验证&#39;,&#39;templatecode&#39;=>&#39;SMS_9655461&#39;),
 &#39;dayu_template_sold&#39;=> array(&#39;signname&#39;=>&#39;点多多&#39;,&#39;templatecode&#39;=>&#39;SMS_12800188&#39;),
 &#39;dayu_template_buysuccess&#39;=> array(&#39;signname&#39;=>&#39;点多多&#39;,&#39;templatecode&#39;=>&#39;SMS_12775103&#39;),
 &#39;dayu_template_newagent&#39;=> array(&#39;signname&#39;=>&#39;点多多&#39;,&#39;templatecode&#39;=>&#39;SMS_12815193&#39;),
);



서명 정보 서명은 문자 메시지 [많이 클릭하세요]에 표시됩니다. 허용된 서명, 시스템 또는 자체 심사를 통과한 것들이 혼합될 수 있습니다.

Alibaba(Alibaba Big Fish) PHP 버전의 SMS 전송 예제에 대한 자세한 설명

Alibaba(Alibaba Big Fish) PHP 버전의 SMS 전송 예제에 대한 자세한 설명

Alibaba(Alibaba Big Fish) PHP 버전의 SMS 전송 예제에 대한 자세한 설명

원어민반

으르레

그렇죠 PHP 버전의 Alibaba(Alibaba Big Fish) SMS 전송 예제 세부 내용은 PHP 중국어 웹사이트(www.php.cn)를 참고하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.