当前位置: 首页>>代码示例>>PHP>>正文


PHP nusoap_client::serialize_val方法代码示例

本文整理汇总了PHP中nusoap_client::serialize_val方法的典型用法代码示例。如果您正苦于以下问题:PHP nusoap_client::serialize_val方法的具体用法?PHP nusoap_client::serialize_val怎么用?PHP nusoap_client::serialize_val使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在nusoap_client的用法示例。


在下文中一共展示了nusoap_client::serialize_val方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: initCoSign


//.........这里部分代码省略.........
  *                                     Il doit être en HTML et contenir la balise {yousignUrl} qui sera remplacée par l'URL
  *                                     d'accès à l'interface de signature du/des documents. (Non utilisé en mode Iframe)
  *                                   - endMailSubject : Sujet de l'email envoyé lorsque tous les cosignataires ont signés le/les documents (Non utilisé en mode Iframe)
  *                                   - endMail : Corps de l'email envoyé lorsque tous les cosignataires ont signés le/les documents
  *                                     Il dit être en HTML et contenir la balise {yousignUrl} qui sera remplacée par l'URL
  *                                     d'accès à l'interface listant le/les documents signés (Non utilisé en mode Iframe)
  *                                   - language : Langue définie pour la cosignature.
  *                                     Disponibles: FR|EN|DE
  *                                     Par défaut: FR
  *                                   - mode :     Mode d'utilisation (Aucun par défaut)
  *                                       * IFRAME : Permet de signer directement dans l'application hébergeant l'iframe
  *                                         Ceci retournera un token pour chaque signataire
  *                                         L'URL devant appeler l'Iframe est:
  *                                             => (Démo) https://demo.yousign.fr/public/ext/cosignature/{token}
  *                                             => (Prod) https://yousign.fr/public/ext/cosignature/{token}
  *                                   - archive : Booléen permettant d'activer l'archivage du/des documents signés automatiquement
  *                                     L'archivage se fait lorsque tous les cosignataires ont signés
  *
  * @return mixed : Id de la demande de cosignature créée et liste des id des fichiers à signer
  *               Si le mode "IFRAME" est définie, un token sera également retournée pour chaque cosignataire
  *               Pour associer le bon token au bon cosignataire, un email et un numéro de téléphone sont associés à chaque token
  *               (ou false si une erreur est survenue)
  *
  * @category com.yousign.cosignejb
  *
  * @link http://developer.yousign.fr/com/yousign/cosignejb/CosignWS.html#CosignWS()
  */
 public function initCoSign($lstFiles, $lstPersons, $visibleOptions, $message, $options = array())
 {
     $payload = '';
     $this->client = $this->setClientSoap($this->URL_WSDL_COSIGN);
     // A cause d'un soucis dans la librairie Nusoap, nous sommes obligés de créer nous même le payload afin qu'il corresponde à notre WSDL.
     // Le pb : Avec un tableau de paramètres, Nusoap créer cette arborescence : <files><item>...</item><item>...</item></files>
     // Nous avons besoin de cette arborescence : <files>...</files><files>...</files>. Les lignes suivantes permettent de bien la construire.
     // Liste des fichiers de la co-signature
     foreach ($lstFiles as $key => $file) {
         $filePayload = '';
         $visibleOptionsPayload = '';
         // On récupère les options de signature visible
         foreach ($visibleOptions[$file['idFile']] as $option) {
             $item = array('visibleOptions' => $option);
             foreach ($item as $k => $v) {
                 $visibleOptionsPayload .= $this->client->serialize_val($v, $k, false, false, false, false, 'encoded');
             }
         }
         // On supprime l'id file qui est inutile
         unset($file['idFile']);
         $item = array('lstCosignedFile' => $file);
         foreach ($item as $k => $v) {
             $filePayload .= $this->client->serialize_val($v, $k, false, false, false, false, 'encoded');
         }
         // On insert les données de signature visible
         $payload .= substr_replace($filePayload, $visibleOptionsPayload, strpos($filePayload, '</lstCosignedFile>'), 0);
     }
     // Liste des co-signataires
     foreach ($lstPersons as $person) {
         $item = array('lstCosignerInfos' => $person);
         foreach ($item as $k => $v) {
             $payload .= $this->client->serialize_val($v, $k, false, false, false, false, 'encoded');
         }
     }
     // Ajout du message
     $payload .= $this->client->serialize_val($message, 'message', false, false, false, false, 'encoded');
     // Envoi d'email
     if (isset($options['initMailSubject']) && isset($options['initMail'])) {
         $payload .= $this->client->serialize_val($options['initMailSubject'], 'initMailSubject', false, false, false, false, 'encoded');
         $payload .= $this->client->serialize_val($options['initMail'], 'initMail', false, false, false, false, 'encoded');
     }
     if (isset($options['endMailSubject']) && isset($options['endMail'])) {
         $payload .= $this->client->serialize_val($options['endMailSubject'], 'endMailSubject', false, false, false, false, 'encoded');
         $payload .= $this->client->serialize_val($options['endMail'], 'endMail', false, false, false, false, 'encoded');
     }
     if (isset($options['language'])) {
         $payload .= $this->client->serialize_val($options['language'], 'language', false, false, false, false, 'encoded');
     }
     if (isset($options['mode'])) {
         $payload .= $this->client->serialize_val($options['mode'], 'mode', false, false, false, false, 'encoded');
     }
     if (isset($options['archive'])) {
         $payload .= $this->client->serialize_val($options['archive'], 'archive', false, false, false, false, 'encoded');
     }
     $result = $this->client->call('initCosign', $payload, self::API_NAMESPACE, self::API_NAMESPACE, $this->createHeaders());
     if ($this->client->fault) {
         $this->errors[] = $this->client->faultstring;
         return false;
     } else {
         $err = $this->client->getError();
         if ($err) {
             $this->errors = $err;
             return false;
         } else {
             if ($result > 0) {
                 return $result;
             } else {
                 $this->errors[] = 'No result';
                 return false;
             }
         }
     }
 }
开发者ID:ConstantSIDJUI,项目名称:yousign-api-client-php,代码行数:101,代码来源:YsApi.php


注:本文中的nusoap_client::serialize_val方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。