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


PHP AddressFormat::cleanOrderedAddress方法代码示例

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


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

示例1: getFormattedAddressFieldsValues

 public static function getFormattedAddressFieldsValues($address, $addressFormat, $id_lang = null)
 {
     if (!$id_lang) {
         $id_lang = Context::getContext()->language->id;
     }
     $tab = array();
     $temporyObject = array();
     // Check if $address exist and it's an instanciate object of Address
     if ($address && $address instanceof Address) {
         foreach ($addressFormat as $line) {
             if (($keyList = preg_split(self::_CLEANING_REGEX_, $line, -1, PREG_SPLIT_NO_EMPTY)) && is_array($keyList)) {
                 foreach ($keyList as $pattern) {
                     if ($associateName = explode(':', $pattern)) {
                         $totalName = count($associateName);
                         if ($totalName == 1 && isset($address->{$associateName[0]})) {
                             $tab[$associateName[0]] = $address->{$associateName[0]};
                         } else {
                             $tab[$pattern] = '';
                             // Check if the property exist in both classes
                             if ($totalName == 2 && class_exists($associateName[0]) && property_exists($associateName[0], $associateName[1]) && property_exists($address, 'id_' . strtolower($associateName[0]))) {
                                 $idFieldName = 'id_' . strtolower($associateName[0]);
                                 if (!isset($temporyObject[$associateName[0]])) {
                                     $temporyObject[$associateName[0]] = new $associateName[0]($address->{$idFieldName});
                                 }
                                 if ($temporyObject[$associateName[0]]) {
                                     $tab[$pattern] = is_array($temporyObject[$associateName[0]]->{$associateName[1]}) ? isset($temporyObject[$associateName[0]]->{$associateName[1]}[$id_lang]) ? $temporyObject[$associateName[0]]->{$associateName[1]}[$id_lang] : '' : $temporyObject[$associateName[0]]->{$associateName[1]};
                                 }
                             }
                         }
                     }
                 }
                 AddressFormat::_setOriginalDisplayFormat($tab, $line, $keyList);
             }
         }
     }
     AddressFormat::cleanOrderedAddress($addressFormat);
     // Free the instanciate objects
     foreach ($temporyObject as &$object) {
         unset($object);
     }
     return $tab;
 }
开发者ID:jicheng17,项目名称:pengwine,代码行数:42,代码来源:AddressFormat.php


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