2012-11-26 23 views
5

मुझे डाक पते को देश के प्रारूप में प्रारूपित करने की आवश्यकता है और कुछ PHP लाइब्रेरी की तलाश कर रहा हूं जो ऐसा कर सकता है। मैं ज़ेंड फ्रेमवर्क 2 के साथ काम करता हूं जो लोकेल का उपयोग करता है लेकिन दुर्भाग्य से ऐसा लगता है कि इस समय इसे संभालने में सक्षम नहीं है।पता देश के प्रारूप में डाक पता प्रारूपित करने के लिए मुझे क्या उपयोग करना चाहिए

examples 

NL RECIPIENT 
     STREET_NAME HOUSE_NUMBER 
     POSTAL_CODE LOCALITY 
     COUNTRY 

US RECIPIENT 
     HOUSE_NUMBER STREET_NAME [STREET_TYPE] [STREET_DIRECTION] [BUILDING] [FLOOR] [APARTMENT] 
     LOCALITY PROVINCE_ABBREVIATION POSTAL_CODE 
     COUNTRY 

UK RECIPIENT 
     [FLOOR] [APARTMENT] 
     [BUILDING] 
     [HOUSE_NUMBER] STREET_NAME 
     [DEPENDENT_LOCALITY] 
     LOCALITY 
     POSTAL_CODE 

(स्रोत http://www.addressdoctor.com/en/countries-data/address-formats.html)

उत्तर

1

मैं जबकि एक अंतरराष्ट्रीय वेबसाइट बनाने में एक ही मुद्दा सामना करना पड़ा।

समाधान पते के सभी समेकित हिस्सों से बना एक स्ट्रिंग मुद्रित करना था और जब संभव हो तो पता लगाने के लिए Google Map API का उपयोग करें।

var g = new google.maps.Geocoder(); 

function format_address(raw_address) { 

    g.geocode({address: raw_address}, function (a, status) { 


     if (status === "OK") { 

      var splt = a[0].formatted_address.split(new RegExp(",", "g")); 

      var i = 0; 
      var res = ""; 


      for(i = 0; i < splt.length-1; i++) 
       res += $.trim(splt[i]) + '<br/>'; 

      res += $.trim(splt[splt.length-1]); 




      $('#address').html(res); 
     } 
     else if (status == "OVER_QUERY_LIMIT") { 

        //wait 500ms and try again 

     } 
     else { 
      $('#address').(raw_adress); 

     } 
    }); 
} 
+0

दुर्भाग्य से यह केवल क्लाइंट-साइड काम करता है ... – pouer

+0

यह सही नहीं है, लेकिन मुझे लगता है कि यह काम करेगा ... ध्यान दें कि जियोकोडर भी भाषाओं का एक समूह में कार्यान्वित किया जाता सर्वर साइड पर इस्तेमाल किया जा रहा। (प्रति दिन 1000 हिट के भीतर, मुझे विश्वास है) – bas

+2

और उन्हें अपने TOS के अनुसार, उनकी सेवा का उपयोग करने के लिए एक Google मानचित्र दिखाना होगा। – Matt