Skip to main content

Ανάκτηση ονόματος από κωδικό χώρας

Σε προηγούμενη ανάρτηση ανάφερθηκε μια Ελληνική Λίστα Χωρών για χρήση σε οποιαδήποτε φόρμα. Σε περίπτωση όμως που θέλουμε να ανακτήσουμε από τον κωδικό(option value) της χώρας, το όνομά της, τι κάνουμε;
Μία λύση θα ήταν να έχουμε ένα πίνακα σε μια βάση δεδομένων(ή σε μια μεταβλητή) με δύο στήλες: "Κωδικό χώρας" και "Όνομα χώρας". Μια άλλη λύση θα ήταν να έχουμε ένα αρχείο που να περιέχει τις απαιτούμενες πληροφορίες.

Εδώ έχει γραφεί ο τρόπος:

Αποθήκευση σε μεταβλητή
$countries = array("mk"=>"F.Y.R.O.M. (Πρώην Γιουγκοσλαβική Δημοκρατία της Μακεδονίας)",
"sh"=>"Αγία Ελένη",
"sm"=>"Άγιος Μαρίνος",
"ao"=>"Αγκόλα",
"az"=>"Αζερμπαϊτζάν",
"eg"=>"Αίγυπτος",
"et"=>"Αιθιοπία",
"ht"=>"Αϊτή",
"ci"=>"Ακτή Ελεφαντοστού",
"al"=>"Αλβανία",
"dz"=>"Αλγερία",
"as"=>"Αμερικανική Σαμόα",
"tp"=>"Ανατολικό Τιμόρ",
"ai"=>"Ανγκουίλα",
"ad"=>"Ανδόρα",
"aq"=>"Ανταρκτική",
"ag"=>"Αντίγκουα και Μπαρμπούντα",
"ar"=>"Αργεντινή",
"am"=>"Αρμενία",
"aw"=>"Αρούμπα",
"au"=>"Αυστραλία",
"at"=>"Αυστρία",
"af"=>"Αφγανιστάν",
"vu"=>"Βανουάτου",
"va"=>"Βατικανό",
"be"=>"Βέλγιο",
"ve"=>"Βενεζουέλα",
"bm"=>"Βερμούδα",
"vn"=>"Βιετνάμ",
"bo"=>"Βολιβία",
"mp"=>"Βόρειες Νήσοι Μαριάννες",
"ba"=>"Βοσνία και Ερζεγοβίνη",
"bg"=>"Βουλγαρία",
"br"=>"Βραζιλία",
"io"=>"Βρετανικά Εδάφη Ινδικού Ωκεανού",
"vg"=>"Βρετανικές Παρθένοι Νήσοι",
"fr"=>"Γαλλία",
"gf"=>"Γαλλική Γουιάνα",
"pf"=>"Γαλλική Πολυνησία",
"de"=>"Γερμανία",
"ge"=>"Γεωργία",
"gi"=>"Γιβραλτάρ",
"yu"=>"Γιουγκοσλαβία (Πρώην)",
"gm"=>"Γκάμπια",
"ga"=>"Γκαμπόν",
"gh"=>"Γκάνα",
"gu"=>"Γκουάμ",
"gp"=>"Γουαδελούπη",
"gt"=>"Γουατεμάλα",
"gy"=>"Γουιάνα",
"gn"=>"Γουινέα",
"gw"=>"Γουινέα Μπισάου",
"gd"=>"Γρενάδα",
"gl"=>"Γροιλανδία",
"dk"=>"Δανία",
"cz"=>"Δημοκρατία της Τσεχίας",
"do"=>"Δομινικανή Δημοκρατία",
"eh"=>"Δυτική Σαχάρα",
"sv"=>"Ελ Σαλβαδόρ",
"ch"=>"Ελβετία",
"gr"=>"Ελλάδα",
"er"=>"Ερυθραία",
"ee"=>"Εσθονία",
"zr"=>"Ζαΐρ",
"zm"=>"Ζάμπια",
"zw"=>"Ζιμπάμπουε",
"ae"=>"Ηνωμένα Αραβικά Εμιράτα",
"us"=>"Ηνωμένες Πολιτείες της Αμερικής",
"uk"=>"Ηνωμένο Βασίλειο",
"jp"=>"Ιαπωνία",
"in"=>"Ινδία",
"id"=>"Ινδονησία",
"jo"=>"Ιορδανία",
"iq"=>"Ιράκ",
"ir"=>"Ιράν",
"ie"=>"Ιρλανδία",
"gq"=>"Ισημερινή Γουινέα",
"ec"=>"Ισημερινός",
"is"=>"Ισλανδία",
"es"=>"Ισπανία",
"il"=>"Ισραήλ",
"it"=>"Ιταλία",
"kz"=>"Καζακστάν",
"cm"=>"Καμερούν",
"kh"=>"Καμπότζη",
"ca"=>"Καναδάς",
"qa"=>"Κατάρ",
"cf"=>"Κεντροαφρικανική Δημοκρατία",
"ke"=>"Κένυα",
"cn"=>"Κίνα",
"kg"=>"Κιργιζία",
"ki"=>"Κιριμπάτι",
"cg"=>"Κογκό",
"co"=>"Κολομβία",
"km"=>"Κομόρες",
"kp"=>"Κορέα, Βόρεια",
"kr"=>"Κορέα, Νότια",
"cr"=>"Κόστα Ρίκα",
"cu"=>"Κούβα",
"kw"=>"Κουβέιτ",
"hr"=>"Κροατία",
"cy"=>"Κύπρος",
"la"=>"Λάος",
"ls"=>"Λεσότο",
"lv"=>"Λετονία",
"by"=>"Λευκορωσία",
"lb"=>"Λίβανος",
"lr"=>"Λιβερία",
"ly"=>"Λιβύη",
"lt"=>"Λιθουανία",
"li"=>"Λιχτενστάιν",
"lu"=>"Λουξεμβούργο",
"yt"=>"Μαγιότ",
"mg"=>"Μαδαγασκάρη",
"mo"=>"Μακάο",
"my"=>"Μαλαισία",
"mw"=>"Μαλάουι",
"mv"=>"Μαλδίβες",
"ml"=>"Μαλί",
"mt"=>"Μάλτα",
"ma"=>"Μαρόκο",
"mq"=>"Μαρτινίκα",
"mu"=>"Μαυρίκιος",
"mr"=>"Μαυριτανία",
"mx"=>"Μεξικό",
"um"=>"U.S. Μικρά Μακρινά Νησιά",
"fm"=>"Μικρονησία, Δημοκρατικές Πολιτείες της",
"mn"=>"Μογγολία",
"mz"=>"Μοζαμβίκη",
"md"=>"Μολδαβία",
"mc"=>"Μονακό",
"ms"=>"Μονσεράτ",
"bd"=>"Μπανγκλαντές",
"bb"=>"Μπαρμπάντος",
"bs"=>"Μπαχάμες",
"bh"=>"Μπαχρέιν",
"bz"=>"Μπελίζε",
"bj"=>"Μπενίν",
"bw"=>"Μποτσουάνα",
"bf"=>"Μπουρκίνα Φάσο",
"bi"=>"Μπουρούντι",
"bt"=>"Μπουτάν",
"bn"=>"Μπρουνέι",
"mm"=>"Μυανμάρ",
"na"=>"Ναμίμπια",
"nr"=>"Ναούρου",
"nz"=>"Νέα Ζηλανδία",
"nc"=>"Νέα Καληδονία",
"np"=>"Νεπάλ",
"cx"=>"Νησί των Χριστουγέννων",
"wf"=>"Νησιά Γουάλις και Φουτούνα",
"ck"=>"Νησιά Κουκ",
"sj"=>"Νησιά Σβάλμπαρντ και Γιαν Μάγεν",
"sp"=>"Νησιά Σολομώντος",
"tc"=>"Νησιά Τουρκς και Κάικος",
"fo"=>"Νησιά Φερόε",
"fk"=>"Νησιά Φόκλαντ",
"hm"=>"Νησιά Χερντ και Μακ Ντόναλντ",
"ky"=>"Νήσοι Κέιμαν",
"cc"=>"Νήσοι Κόκος (Κίλινγκ)",
"mh"=>"Νήσοι Μάρσαλ",
"bv"=>"Νήσος Μπουβέ",
"nf"=>"Νήσος Νόρφολκ",
"pn"=>"Νήσος Πίτκερν",
"ne"=>"Νίγηρας",
"ng"=>"Νιγηρία",
"ni"=>"Νικαράγουα",
"nu"=>"Νίουε",
"no"=>"Νορβηγία",
"tf"=>"Νότια Γαλλικά Εδάφη",
"gs"=>"Νότια Γεωργία και Νότια Νησιά Σάντουιτς",
"za"=>"Νότιος Αφρική",
"dm"=>"Ντομίνικα",
"nl"=>"Ολλανδία",
"an"=>"Ολλανδικές Αντίλλες",
"om"=>"Ομάν",
"hn"=>"Ονδούρα",
"hu"=>"Ουγγαρία",
"ug"=>"Ουγκάντα",
"uz"=>"Ουζμπεκιστάν",
"ua"=>"Ουκρανία",
"uy"=>"Ουρουγουάη",
"pk"=>"Πακιστάν",
"pw"=>"Παλάου",
"pa"=>"Παναμάς",
"pg"=>"Παπούα Νέα Γουινέα",
"py"=>"Παραγουάη",
"vi"=>"Παρθένες Νήσοι",
"pe"=>"Περού",
"pl"=>"Πολωνία",
"pt"=>"Πορτογαλία",
"pr"=>"Πουέρτο Ρίκο",
"cv"=>"Πράσινο Ακρωτήρι",
"re"=>"Ρεϊνιόν",
"rw"=>"Ρουάντα",
"ro"=>"Ρουμανία",
"ru"=>"Ρωσία",
"ws"=>"Σαμόα",
"lc"=>"Σάντα Λουτσία",
"st"=>"Σάο Τομέ και Πρίνσιπε",
"sa"=>"Σαουδική Αραβία",
"pm"=>"Σεν Πιερ και Μικελόν",
"sn"=>"Σενεγάλη",
"vc"=>"Σεντ Βίνσεντ και Γρεναδίνες",
"kn"=>"Σεντ Κιτς & Νέβις",
"sc"=>"Σεϋχέλλες",
"sg"=>"Σιγκαπούρη",
"sl"=>"Σιέρα Λεόνε",
"sk"=>"Σλοβακία",
"si"=>"Σλοβενία",
"so"=>"Σομαλία",
"sz"=>"Σουαζιλάνδη",
"sd"=>"Σουδάν",
"se"=>"Σουηδία",
"sr"=>"Σουρινάμ",
"lk"=>"Σρι Λάνκα",
"sy"=>"Συρία",
"tw"=>"Ταϊβάν",
"th"=>"Ταϊλάνδη",
"tz"=>"Τανζανία",
"tj"=>"Τατζικιστάν",
"jm"=>"Τζαμάικα",
"dj"=>"Τζιμπουτί",
"tg"=>"Τόγκο",
"tk"=>"Τοκελάου",
"to"=>"Τόνγκα",
"tv"=>"Τουβαλού",
"tr"=>"Τουρκία",
"tm"=>"Τουρκμενιστάν",
"tt"=>"Τρινιντάντ και Τομπάγκο",
"td"=>"Τσαντ",
"tn"=>"Τυνησία",
"ye"=>"Υεμένη",
"ph"=>"Φιλιππίνες",
"fi"=>"Φινλανδία",
"fj"=>"Φίτζι",
"cl"=>"Χιλή",
"hk"=>"Χονκ Κονγκ");


Με αυτόν τον τρόπο, μπορούμε πχ να έχουμε το "gr" ως κωδικό χώρας οπότε και το
print($countries["gr"]);

θα επιστρέψει ως έξοδο το string "Ελλάδα".

Comments

Popular posts from this blog

Configure drupal_http_request() on the fly

The drupal_http_request() function supports connections using a proxy. You can configure a global proxy to use for all drupal_http_request() callbacks from the settings.php file of your website/installation by filling the following lines with the proper information:For those of you preferring a UI, then HTTP proxy module is for you.But what if you only want to use a proxy in some cases; like a custom module? In that case you will need the following function(modify accordingly):Now all you have to do is Call <?php _MYMODULE_change_proxy(); ?>.Do your drupal_http_request() calls.Call <?php _MYMODULE_change_proxy(TRUE); ?> to reset your previous settings.

Drupal: Allow registrations through Invite or Referral modules only

The Invite module provides invitations from existing users to their contacts. The Referral module, in contrary, creates a special URL for each existing user, which can be found in each user's profile, and allows new user registration. Even though, these two modules seem to provide the same functionality, they don't (and they shouldn't). Invite module, provides a mechanism for a site administrator to limit new registrations to "Invitations only". Referral module doesn't provide any of this functionality. Some users have requested the Invite module and Referral module to join in one module. Until now, there isn't anything to that direction. Wouldn't it be great though if there was a solution to limit drupal registration to referral or invitation only? Copy the functions below to a refinvite.module file in your sites→all→modules→refinvite folder and enable the module. Then go to http://<your-address-here>/admin/user/settings and enable the new …

Send mass email to certain users using VBO

Views Bulk Operations uses the built-in actions to act upon nodes, users, entities etc. Among these actions is our ability to send emails to users. If you try to use this action though you will encounter a small but serious problem. You are asked for an email address to send your message. You might say "but I have selected the users I want this message to reach. Why should I input an address again?". Don't get overwhelmed. What this field expects is not an address but a token. Specially this token [user-email]. If the website is intended for you, then you might say that's not such a problem to write this token down again and again. But if the manager of the website is bound to be the client or if you just want to spend less time writing things down, you might prefer to use a custom hook_form_alter() callback to set a default value. It could be done in both theme and module environment so suit yourself. Just add the following in your module or theme.