<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tortoise IT &#187; US States</title>
	<atom:link href="http://www.sean-barton.co.uk/tag/us-states/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sean-barton.co.uk</link>
	<description>by Sean Barton, a freelance PHP website developer in Crewe, Cheshire</description>
	<lastBuildDate>Tue, 31 Jan 2012 17:34:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Converting US State names into their Abbreviations (and back!)</title>
		<link>http://www.sean-barton.co.uk/2008/05/converting-us-state-names-into-their-appreviations-and-back/</link>
		<comments>http://www.sean-barton.co.uk/2008/05/converting-us-state-names-into-their-appreviations-and-back/#comments</comments>
		<pubDate>Sat, 24 May 2008 13:59:35 +0000</pubDate>
		<dc:creator>Sean</dc:creator>
				<category><![CDATA[Time Savers]]></category>
		<category><![CDATA[US States]]></category>

		<guid isPermaLink="false">http://www.sean-barton.co.uk/?p=7</guid>
		<description><![CDATA[I&#8217;ve just had to find a way to convert a number of US state names into their abbreviations to make a clients life much easier so I thought I might share so that others wouldn&#8217;t have to go through the hassle I did. First things first, here&#8217;s some PHP code&#8230; function convert_state($name, $to='name') { $states = array( array('name'=&#62;'Alabama', 'abbrev'=&#62;'AL'), array('name'=&#62;'Alaska', 'abbrev'=&#62;'AK'), array('name'=&#62;'Arizona', 'abbrev'=&#62;'AZ'), array('name'=&#62;'Arkansas', 'abbrev'=&#62;'AR'), array('name'=&#62;'California', 'abbrev'=&#62;'CA'), array('name'=&#62;'Colorado', 'abbrev'=&#62;'CO'), array('name'=&#62;'Connecticut', 'abbrev'=&#62;'CT'), array('name'=&#62;'Delaware', 'abbrev'=&#62;'DE'), array('name'=&#62;'Florida', 'abbrev'=&#62;'FL'), array('name'=&#62;'Georgia', 'abbrev'=&#62;'GA'), array('name'=&#62;'Hawaii', 'abbrev'=&#62;'HI'), array('name'=&#62;'Idaho', 'abbrev'=&#62;'ID'), array('name'=&#62;'Illinois', 'abbrev'=&#62;'IL'), array('name'=&#62;'Indiana', 'abbrev'=&#62;'IN'), array('name'=&#62;'Iowa', 'abbrev'=&#62;'IA'), array('name'=&#62;'Kansas', 'abbrev'=&#62;'KS'), array('name'=&#62;'Kentucky', 'abbrev'=&#62;'KY'), array('name'=&#62;'Louisiana', 'abbrev'=&#62;'LA'), array('name'=&#62;'Maine', 'abbrev'=&#62;'ME'), array('name'=&#62;'Maryland', 'abbrev'=&#62;'MD'), array('name'=&#62;'Massachusetts', 'abbrev'=&#62;'MA'), array('name'=&#62;'Michigan', &#8230; <a class="continue_reading" href="http://www.sean-barton.co.uk/2008/05/converting-us-state-names-into-their-appreviations-and-back/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just had to find a way to convert a number of US state names into their abbreviations to make a clients life much easier so I thought I might share so that others wouldn&#8217;t have to go through the hassle I did.</p>
<p>First things first, here&#8217;s some PHP code&#8230;</p>
<pre>function convert_state($name, $to='name') {
	$states = array(
	array('name'=&gt;'Alabama', 'abbrev'=&gt;'AL'),
	array('name'=&gt;'Alaska', 'abbrev'=&gt;'AK'),
	array('name'=&gt;'Arizona', 'abbrev'=&gt;'AZ'),
	array('name'=&gt;'Arkansas', 'abbrev'=&gt;'AR'),
	array('name'=&gt;'California', 'abbrev'=&gt;'CA'),
	array('name'=&gt;'Colorado', 'abbrev'=&gt;'CO'),
	array('name'=&gt;'Connecticut', 'abbrev'=&gt;'CT'),
	array('name'=&gt;'Delaware', 'abbrev'=&gt;'DE'),
	array('name'=&gt;'Florida', 'abbrev'=&gt;'FL'),
	array('name'=&gt;'Georgia', 'abbrev'=&gt;'GA'),
	array('name'=&gt;'Hawaii', 'abbrev'=&gt;'HI'),
	array('name'=&gt;'Idaho', 'abbrev'=&gt;'ID'),
	array('name'=&gt;'Illinois', 'abbrev'=&gt;'IL'),
	array('name'=&gt;'Indiana', 'abbrev'=&gt;'IN'),
	array('name'=&gt;'Iowa', 'abbrev'=&gt;'IA'),
	array('name'=&gt;'Kansas', 'abbrev'=&gt;'KS'),
	array('name'=&gt;'Kentucky', 'abbrev'=&gt;'KY'),
	array('name'=&gt;'Louisiana', 'abbrev'=&gt;'LA'),
	array('name'=&gt;'Maine', 'abbrev'=&gt;'ME'),
	array('name'=&gt;'Maryland', 'abbrev'=&gt;'MD'),
	array('name'=&gt;'Massachusetts', 'abbrev'=&gt;'MA'),
	array('name'=&gt;'Michigan', 'abbrev'=&gt;'MI'),
	array('name'=&gt;'Minnesota', 'abbrev'=&gt;'MN'),
	array('name'=&gt;'Mississippi', 'abbrev'=&gt;'MS'),
	array('name'=&gt;'Missouri', 'abbrev'=&gt;'MO'),
	array('name'=&gt;'Montana', 'abbrev'=&gt;'MT'),
	array('name'=&gt;'Nebraska', 'abbrev'=&gt;'NE'),
	array('name'=&gt;'Nevada', 'abbrev'=&gt;'NV'),
	array('name'=&gt;'New Hampshire', 'abbrev'=&gt;'NH'),
	array('name'=&gt;'New Jersey', 'abbrev'=&gt;'NJ'),
	array('name'=&gt;'New Mexico', 'abbrev'=&gt;'NM'),
	array('name'=&gt;'New York', 'abbrev'=&gt;'NY'),
	array('name'=&gt;'North Carolina', 'abbrev'=&gt;'NC'),
	array('name'=&gt;'North Dakota', 'abbrev'=&gt;'ND'),
	array('name'=&gt;'Ohio', 'abbrev'=&gt;'OH'),
	array('name'=&gt;'Oklahoma', 'abbrev'=&gt;'OK'),
	array('name'=&gt;'Oregon', 'abbrev'=&gt;'OR'),
	array('name'=&gt;'Pennsylvania', 'abbrev'=&gt;'PA'),
	array('name'=&gt;'Rhode Island', 'abbrev'=&gt;'RI'),
	array('name'=&gt;'South Carolina', 'abbrev'=&gt;'SC'),
	array('name'=&gt;'South Dakota', 'abbrev'=&gt;'SD'),
	array('name'=&gt;'Tennessee', 'abbrev'=&gt;'TN'),
	array('name'=&gt;'Texas', 'abbrev'=&gt;'TX'),
	array('name'=&gt;'Utah', 'abbrev'=&gt;'UT'),
	array('name'=&gt;'Vermont', 'abbrev'=&gt;'VT'),
	array('name'=&gt;'Virginia', 'abbrev'=&gt;'VA'),
	array('name'=&gt;'Washington', 'abbrev'=&gt;'WA'),
	array('name'=&gt;'West Virginia', 'abbrev'=&gt;'WV'),
	array('name'=&gt;'Wisconsin', 'abbrev'=&gt;'WI'),
	array('name'=&gt;'Wyoming', 'abbrev'=&gt;'WY')
	);

	$return = false;
	foreach ($states as $state) {
		if ($to == 'name') {
			if (strtolower($state['abbrev']) == strtolower($name)){
				$return = $state['name'];
				break;
			}
		} else if ($to == 'abbrev') {
			if (strtolower($state['name']) == strtolower($name)){
				$return = strtoupper($state['abbrev']);
				break;
			}
		}
	}
	return $return;
}</pre>
<p>The function basically accepts a string of text ($name) and a keyword which can either be the &#8216;name&#8217; or &#8216;abbrev&#8217;. This tells the function what you want from it (ie: if you told it Florida and then &#8216;abbrev&#8217; for the argument it would return FL).</p>
<p><em>What if I dont know what data I have but know what data I want out?</em></p>
<p>This problem will come up quite frequently if, for example, you are compiling data from various sources and you are parsing mixed input. To make the function a little less stupid we need to modify the foreach loop at the bottom a little.</p>
<pre>foreach ($states as $state) {
	foreach ($state as $title=&gt;$value) {
		if (strtolower($value) == strtolower(trim($name))) {
			if ($to == 'name') {
				$return = $state['name'];
			} else {
				$return = $state['abbrev'];
			}
			break;
		}
	}
}</pre>
<p>This code, instead of checking the specific field for each state, check the whole state array for the text we passed it. This way it doesn&#8217;t care if your passing it a state name or abbreviation as it can match on both. As before the second function argument is what response you want.</p>
<p><em>Whats next?</em></p>
<p>The next thing to do with this would be to just chuck the State details into a database and query them which would be much faster. The advantage about my way is that you can use it when writing code for others or systems that are unknown to you.</p>
<p>hope that has saved you a little time!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sean-barton.co.uk/2008/05/converting-us-state-names-into-their-appreviations-and-back/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)
Database Caching 1/35 queries in 0.073 seconds using disk
Object Caching 301/347 objects using disk

Served from: www.sean-barton.co.uk @ 2012-02-08 22:18:40 -->
