<?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"
	>

<channel>
	<title>Learning Is Fun</title>
	<atom:link href="http://www.tanzilo.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tanzilo.com</link>
	<description>Talks on Web Technology and Better Product Development</description>
	<pubDate>Tue, 06 Jan 2009 19:31:43 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<item>
		<title>Wordpress: display posts by category ID. Solution with code &#038; example.</title>
		<link>http://www.tanzilo.com/2009/01/06/wordpress-display-posts-by-category-id-solution-with-code-example/</link>
		<comments>http://www.tanzilo.com/2009/01/06/wordpress-display-posts-by-category-id-solution-with-code-example/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 19:26:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Wordpress]]></category>

		<category><![CDATA[by category]]></category>

		<category><![CDATA[display]]></category>

		<category><![CDATA[GET]]></category>

		<category><![CDATA[id]]></category>

		<category><![CDATA[posts]]></category>

		<category><![CDATA[show]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=68</guid>
		<description><![CDATA[Hello Guy!
Often in many blogging sites, you will see two or three columns of the most important categories. Recently I had to do this for a blog. It was a little bit cumbersome and time consuming. So, I would like to share the solution so that you can kill the time waste trying yourself in [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Guy!</p>
<p>Often in many blogging sites, you will see two or three columns of the most important categories. Recently I had to do this for a blog. It was a little bit cumbersome and time consuming. So, I would like to share the solution so that you can kill the time waste trying yourself in case you do not know how to do it. In this solution, I show 5 posts at maximum from my chosen three categories.</p>
<p>OK.<br />
Let us start and let me show how to do it.</p>
<p><span style="text-decoration: underline;"><strong>Step One: See the sample what would be the output</strong></span></p>
<p><a href="http://www.tanzilo.com/wp-content/uploads/2009/01/posts-by-category-id.jpg" target="_blank"><img class="alignleft size-medium wp-image-69" style="float:none;" title="posts-by-category-id" src="http://www.tanzilo.com/wp-content/uploads/2009/01/posts-by-category-id-300x146.jpg" alt="" width="300" height="146" /></a></p>
<p>In the above image, you will notice that the first category has enough posts, so it can fetch 5 (five) posts for us. But in second column and third column, there are only three posts because those categories do not have more than three posts. And what I want to say at this point is - although we will try to get 5 posts from each category, we will not get enough in case that category has less than 5 (five) posts and this is done automatically.</p>
<p><span style="text-decoration: underline;"><strong>Step Two: Adding custom function</strong></span></p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpKeyword">	if<span class="phpOperator">(</span></span><span class="phpOperator">!</span><span class="phpFunction"><span class="phpFunctionKeyword">function</span>_exists</span><span class="phpOperator">(</span><span class="phpString">&#8216;postListByCategory&#8217;</span><span class="phpOperator">)</span><span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> categoryNameByCategoryID</span><span class="phpOperator">(</span>$categoryID <span class="phpOperator">=</span> <span class="phpNumber">0</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
		<span class="phpKeyword">	global </span>$wpdb<span class="phpText">;</span>
			$sqlQuery <span class="phpOperator">=</span> <span class="phpString">&#8216;SELECT name FROM &#8216;</span> <span class="phpOperator">.</span> $wpdb<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">prefix </span><span class="phpOperator">.</span> <span class="phpString">&#8220;terms WHERE term_id<span class="phpOperator">=</span>$categoryID&#8221;</span><span class="phpText">;</span>
		<span class="phpKeyword">	return </span>$wpdb<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">get_var</span><span class="phpOperator">(</span>$sqlQuery<span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
	<span class="phpOperator">}</span>
<span class="phpKeyword">	if<span class="phpOperator">(</span></span><span class="phpOperator">!</span><span class="phpFunction"><span class="phpFunctionKeyword">function</span>_exists</span><span class="phpOperator">(</span><span class="phpString">&#8216;postListByCategory&#8217;</span><span class="phpOperator">)</span><span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> postListByCategoryID</span><span class="phpOperator">(</span>$categoryID <span class="phpOperator">=</span> <span class="phpNumber">0</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			$outputString <span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="htmlText">query_posts</span><span class="phpOperator">(</span><span class="phpString">&#8216;orderby<span class="phpOperator">=</span><span class="htmlText">name</span><span class="phpOperator">&#038;</span>order=asc<span class="phpOperator">&#038;</span><span class="htmlText">cat</span><span class="phpOperator">=</span>&#8216;</span> <span class="phpOperator">.</span> $categoryID <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&#038;</span>showposts=<span class="phpNumber">5</span>&#8216;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span><span class="htmlText">ul</span><span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
				$permaLink <span class="phpOperator">=</span><span class="htmlText"> get_permalink</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
				$permaLink <span class="phpOperator">=</span> <span class="phpFunction">trim</span><span class="phpOperator">(</span>$permaLink<span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpKeyword">	if<span class="phpOperator">(</span></span><span class="phpOperator">!</span><span class="phpFunction">empty</span><span class="phpOperator">(</span>$permaLink<span class="phpOperator">)</span><span class="phpOperator">)</span>
				<span class="phpOperator">{</span>
					$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span><span class="htmlText">li</span><span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
					$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>a href=<span class="phpString">&#8220;&#8216;</span> <span class="phpOperator">.</span><span class="htmlText"> get_permalink</span><span class="phpOperator">(</span><span class="phpOperator">)</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;&#8221;</span><span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span><span class="htmlText"> get_the_title</span><span class="phpOperator">(</span>$post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">ID</span><span class="phpOperator">)</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>/a<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
					$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span><span class="htmlText">small</span><span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span><span class="htmlText"> get_the_time</span><span class="phpOperator">(</span><span class="phpString">&#8216;D M jS Y&#8217;</span><span class="phpOperator">)</span> <span class="phpOperator">.</span><span class="phpString">&#8216;<span class="phpOperator">&lt;</span>/small<span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
					$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>/li<span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
				<span class="phpOperator">}</span>
		<span class="phpKeyword">	endwhile<span class="phpText">;</span></span>
			$outputString <span class="phpOperator">.=</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>/ul<span class="phpOperator">&gt;</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpFunction">chr</span><span class="phpOperator">(</span><span class="htmlText">10</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	return </span>$outputString;
		<span class="phpOperator">}</span>
	<span class="phpOperator">}</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>Now open the <strong>functions.php</strong> file inside your theme directory and insert these two functions. If there is none, create a <strong>functions.php</strong> file. And at this point, please remember that all the functions and coding in this file are automatically added during the code execution.</p>
<p>Note that the function names are self descriptive.</p>
<p><span style="text-decoration: underline;"><strong>Step Three: Embed code in your file(s)</strong></span></p>
<p>Now open your <strong>footer.php</strong> file or any other file and add this code. In 99% cases, you may need to customize this small piece of code. The first three lines are category IDs.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	$firstColumnCategoryID  <span class="phpOperator">=</span> <span class="phpNumber">1</span><span class="phpText">;</span>
	$secondColumnCategoryID <span class="phpOperator">=</span> 30;
	$thirdColumnCategoryID  <span class="phpOperator">=</span><span class="htmlText"> 31</span><span class="phpText">;</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomThreeColumns&quot;</span>&gt;</span>
		<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumn&quot;</span>&gt;</span>
			<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumnTop&quot;</span>&gt;</span><span class="htmlSpecialChar">&amp;nbsp;</span><span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> categoryNameByCategoryID</span><span class="phpOperator">(</span>$firstColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span><span class="htmlOtherTag">&lt;/div&gt;</span>
			<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> postListByCategoryID</span><span class="phpOperator">(</span>$firstColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
		<span class="htmlOtherTag">&lt;/div&gt;</span>
		<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumn&quot;</span>&gt;</span>
			<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumnTop&quot;</span>&gt;</span><span class="htmlSpecialChar">&amp;nbsp;</span><span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> categoryNameByCategoryID</span><span class="phpOperator">(</span>$secondColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span><span class="htmlOtherTag">&lt;/div&gt;</span>
				<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> postListByCategoryID</span><span class="phpOperator">(</span>$secondColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
		<span class="htmlOtherTag">&lt;/div&gt;</span>
		<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumnThird&quot;</span>&gt;</span>
			<span class="htmlOtherTag">&lt;div id=<span class="htmlAttributeValue">&quot;bottomColumnTop&quot;</span>&gt;</span><span class="htmlSpecialChar">&amp;nbsp;</span><span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> categoryNameByCategoryID</span><span class="phpOperator">(</span>$thirdColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span><span class="htmlOtherTag">&lt;/div&gt;</span>
			<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span> <span class="phpFunction">echo</span><span class="htmlText"> postListByCategoryID</span><span class="phpOperator">(</span>$thirdColumnCategoryID<span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
		<span class="htmlOtherTag">&lt;/div&gt;</span>
	<span class="htmlOtherTag">&lt;/div&gt;</span>
</pre>
<p><span style="text-decoration: underline;"><strong>Step Four: Link your CSS code</strong></span></p>
<pre class="css">
#bottomThreeColumns
<span class="cssSelector">{</span>
	<span class="cssProperty">width</span><span class="cssRest">:</span><span class="cssValue">940px</span><span class="cssRest">;</span> <span class="cssProperty">min-height</span><span class="cssRest">:</span><span class="cssValue">100px</span><span class="cssRest">;</span> <span class="cssProperty">margin</span><span class="cssRest">:</span><span class="cssValue">0 auto</span><span class="cssRest">;</span> <span class="cssProperty">clear</span><span class="cssRest">:</span><span class="cssValue">both</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomThreeColumns UL
<span class="cssSelector">{</span>
	<span class="cssProperty">margin</span><span class="cssRest">:</span><span class="cssValue">0px 0px 30px 0px</span><span class="cssRest">;</span> <span class="cssProperty">padding</span><span class="cssRest">:</span><span class="cssValue">0px</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomThreeColumns LI
<span class="cssSelector">{</span>
	<span class="cssProperty">list-style</span><span class="cssRest">:</span><span class="cssValue">none</span><span class="cssRest">;</span> <span class="cssProperty">border-bottom</span><span class="cssRest">:</span><span class="cssValue">#EEEEEE solid 1px</span><span class="cssRest">;</span> <span class="cssProperty">margin</span><span class="cssRest">:</span><span class="cssValue">7px 0px 0px 4px</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomThreeColumns LI A
<span class="cssSelector">{</span>
	<span class="cssProperty">text-decoration</span><span class="cssRest">:</span><span class="cssValue">none</span><span class="cssRest">;</span> <span class="cssProperty">color</span><span class="cssRest">:</span><span class="cssValue">#000000</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomThreeColumns LI A:hover
<span class="cssSelector">{</span>
	<span class="cssProperty">text-decoration</span><span class="cssRest">:</span><span class="cssValue">underline</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomThreeColumns SMALL
<span class="cssSelector">{</span>
	<span class="cssProperty">font-style</span><span class="cssRest">:</span><span class="cssValue">italic</span><span class="cssRest">;</span> <span class="cssProperty">line-height</span><span class="cssRest">:</span><span class="cssValue">25px</span><span class="cssRest">;</span> <span class="cssProperty">padding</span><span class="cssRest">:</span><span class="cssValue">0px 0px 0px 4px</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomColumn
<span class="cssSelector">{</span>
	<span class="cssProperty">float</span><span class="cssRest">:</span><span class="cssValue">left</span><span class="cssRest">;</span> <span class="cssProperty">width</span><span class="cssRest">:</span><span class="cssValue">300px</span><span class="cssRest">;</span> <span class="cssProperty">margin</span><span class="cssRest">:</span><span class="cssValue">20px 20px 0px 0px</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomColumnThird
<span class="cssSelector">{</span>
	<span class="cssProperty">float</span><span class="cssRest">:</span><span class="cssValue">left</span><span class="cssRest">;</span> <span class="cssProperty">width</span><span class="cssRest">:</span><span class="cssValue">300px</span><span class="cssRest">;</span> <span class="cssProperty">margin</span><span class="cssRest">:</span><span class="cssValue">20px 0px 0px 0px</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
#bottomColumnTop
<span class="cssSelector">{</span>
	<span class="cssProperty">width</span><span class="cssRest">:</span><span class="cssValue">300px</span><span class="cssRest">;</span> <span class="cssProperty">height</span><span class="cssRest">:</span><span class="cssValue">26px</span><span class="cssRest">;</span> <span class="cssProperty">background</span><span class="cssRest">:</span><span class="cssValue">#5FB8EB</span><span class="cssRest">;</span> <span class="cssProperty">color</span><span class="cssRest">:</span><span class="cssValue">#FFFFFF</span><span class="cssRest">;</span>
	<span class="cssProperty">line-height</span><span class="cssRest">:</span><span class="cssValue">25px</span><span class="cssRest">;</span> <span class="cssProperty">font-weight</span><span class="cssRest">:</span><span class="cssValue">bold</span><span class="cssRest">;</span>
<span class="cssSelector">}</span>
</pre>
<p>I have put the above CSS code in my <strong>style.css</strong> file. In 99% cases, you may need to customize according to your requirements.</p>
<p><span style="text-decoration: underline;"><strong>Step Five: Test everything by opening the link</strong></span></p>
<p>Now test you code and we are done!</p>
<p>Thank you for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tanzilo.com/2009/01/06/wordpress-display-posts-by-category-id-solution-with-code-example/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PHP: Serialization &#038; Unserialization explanation, code &#038; example</title>
		<link>http://www.tanzilo.com/2008/12/31/php-serialization-unserialization-explanation-code-example/</link>
		<comments>http://www.tanzilo.com/2008/12/31/php-serialization-unserialization-explanation-code-example/#comments</comments>
		<pubDate>Wed, 31 Dec 2008 13:00:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Code]]></category>

		<category><![CDATA[Example]]></category>

		<category><![CDATA[explanation]]></category>

		<category><![CDATA[Serialization]]></category>

		<category><![CDATA[Unserialization]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=62</guid>
		<description><![CDATA[Hello Folks!
When I was new to PHP 5 Object Oriented Programming (OOP), the serialization and un-serialization issues were not clear to me and I used to get confused with them often. Nowadays I can play with them easily and I will try to share my knowledge with you so that you can kill your confusion [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Folks!</p>
<p>When I was new to PHP 5 Object Oriented Programming (OOP), the serialization and un-serialization issues were not clear to me and I used to get confused with them often. Nowadays I can play with them easily and I will try to share my knowledge with you so that you can kill your confusion on these topics.</p>
<p>OK. Let us start!</p>
<p><span style="text-decoration: underline;"><strong>What is Serialization?</strong></span></p>
<p>This process makes a storable representation of a value that is useful for storing or passing PHP values around without losing their type and structure.</p>
<p><span style="text-decoration: underline;"><strong>Remember the &#8220;__sleep&#8221; function in case of Serialization</strong></span></p>
<p>Before starting your serialization process, PHP will execute the <strong>__sleep</strong> function automatically. This is a magic function or method.</p>
<p><span style="text-decoration: underline;"><strong>What is Unserialization?</strong></span></p>
<p>This process takes a single serialized variable and converts it back into a PHP value.</p>
<p><span style="text-decoration: underline;"><strong>Remember the &#8220;__wakeup&#8221; function in case of Unserialization</strong></span></p>
<p>Before starting your unserialization process, PHP will execute the <strong>__wakeup</strong> function automatically. This is a magic function or method.</p>
<p><span style="text-decoration: underline;"><strong>What can you Serialize and Unserialize?</strong></span></p>
<p>Many things as such</p>
<ol>
<li>Variables (Integer, Float, Real, String etc.)</li>
<li>Arrays</li>
<li>Objects etc.</li>
</ol>
<p><span style="text-decoration: underline;"><strong>What cannot you Serialize and Unserialize?</strong></span></p>
<p>Only one type</p>
<ol>
<li>Resource-type</li>
</ol>
<p><span style="text-decoration: underline;"><strong>A simple example of Serialization and Unserialization</strong></span></p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpKeyword">	require_once </span><span class="phpString">&#8220;<span class="phpKeyword">class<span class="phpOperator">.</span></span><span class="phpFunction">serialize</span>.php&#8221;</span><span class="phpText">;</span>
	$myObject <span class="phpOperator">=</span><span class="phpKeyword"> new </span><span class="htmlText">SerializationTest</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">=</span> 999;
	$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName  </span><span class="phpOperator">=</span> <span class="phpString">&#8216;Random Visitor&#8217;</span><span class="phpText">;</span>
	$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge   </span><span class="phpOperator">=</span> 59;
	$myString <span class="phpOperator">=</span> <span class="phpString">&#8216;I am a simple line.&#8217;</span><span class="phpText">;</span>
	$myArray <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">0</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;One&#8217;</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">1</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;Two&#8217;</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">2</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;Three&#8217;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> $myString <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$myArray<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$myObject<span class="phpOperator">)</span><span class="phpText">;</span>
	$mySerializedString <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myString<span class="phpOperator">)</span><span class="phpText">;</span>
	$mySerializedArray <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myArray<span class="phpOperator">)</span><span class="phpText">;</span>
	$mySerializedObject <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myObject<span class="phpOperator">)</span><span class="phpText">;</span>
	$myString <span class="phpOperator">=</span> <span class="phpString">&#8216;I have changed<span class="phpOperator">!</span>&#8216;</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">0</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;New <span class="phpNumber">1</span>&#8216;</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">1</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;New <span class="phpNumber">2</span>&#8216;</span><span class="phpText">;</span>
	$myArray<span class="phpOperator">[</span><span class="phpNumber">2</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;New <span class="phpNumber">3</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> $myString <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$myArray<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	$myUnserializedString <span class="phpOperator">=</span><span class="htmlText"> un</span><span class="phpFunction">serialize</span><span class="phpOperator">(</span>$mySerializedString<span class="phpOperator">)</span><span class="phpText">;</span>
	$myUnserializedArray <span class="phpOperator">=</span><span class="htmlText"> un</span><span class="phpFunction">serialize</span><span class="phpOperator">(</span>$mySerializedArray<span class="phpOperator">)</span><span class="phpText">;</span>
	$myUnserializedObject <span class="phpOperator">=</span><span class="htmlText"> un</span><span class="phpFunction">serialize</span><span class="phpOperator">(</span>$mySerializedObject<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> $myUnserializedString <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$myUnserializedArray<span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;$myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myUnserializedObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$myUnserializedObject<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>And here is the related class:</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">class </span><span class="htmlText">SerializationTest</span>
	<span class="phpOperator">{</span>
	<span class="phpKeyword">	public </span>$counter<span class="phpText">;</span>
	<span class="phpKeyword">	public </span>$myName<span class="phpText">;</span>
	<span class="phpKeyword">	public </span>$myAge<span class="phpText">;</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> __construct</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">=</span> 100;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myName  </span><span class="phpOperator">=</span> <span class="phpString">&#8216;Tanzilo Insido&#8217;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myAge   </span><span class="phpOperator">=</span> 28;
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> __sleep</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8220;<span class="phpOperator">&lt;</span><span class="htmlText">h3</span><span class="phpOperator">&gt;</span><span class="htmlText">__sleep</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">&lt;</span>/h3<span class="phpOperator">&gt;</span>&#8220;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">=</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">+</span> <span class="phpNumber">1</span><span class="phpText">;</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8216;Serialization Process Started<span class="phpOperator">!</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">.</span>  <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
		<span class="phpKeyword">	return </span><span class="phpFunction">array</span><span class="phpOperator">(</span><span class="htmlText">myString</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> __wakeup</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8220;<span class="phpOperator">&lt;</span><span class="htmlText">h3</span><span class="phpOperator">&gt;</span><span class="htmlText">__wakeup</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">&lt;</span>/h3<span class="phpOperator">&gt;</span>&#8220;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">=</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span>counter - <span class="phpNumber">1</span><span class="phpText">;</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8216;UnSerialization Process Started<span class="phpOperator">!</span>&#8216;</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
			<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">.</span>  <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
	<span class="phpOperator">}</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p><span style="text-decoration: underline;"><strong>Explanation of the example</strong></span></p>
<p>If you notice the A to Z of the above code, you will find that we have a <strong>$myString</strong> variable, <strong>$myArray</strong> array and <strong>$myObject</strong> object. First of all, we have set values to them and then printed them all. They all perform as expected. Then we change all the values. Next when we serialize and unserialize the values, our original dara structure returns! And that is what we wanted.</p>
<p>Here is the result of the above code:</p>
<p><a href="http://www.tanzilo.com/wp-content/uploads/2008/12/serialize_1.jpg"><img class="alignleft size-full wp-image-65" title="serialize_1" src="http://www.tanzilo.com/wp-content/uploads/2008/12/serialize_1.jpg" alt="" width="500" height="337" style="float:none;" /></a></p>
<p><span style="text-decoration: underline;"><strong>An interesting thing to note:</strong></span><br />
I would like to draw your attention to the fact that using <strong>__sleep()</strong> method, you can change the values of your declared and initialized variables. But you cannot change them by using <strong>__wakeup()</strong> function. For example, see the following code:</p>
<p>Now we serialize 3 (three)  times and unserialize 2 (two) times.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpKeyword">	require_once </span><span class="phpString">&#8220;<span class="phpKeyword">class<span class="phpOperator">.</span></span><span class="phpFunction">serialize</span>.php&#8221;</span><span class="phpText">;</span>
	$myObject <span class="phpOperator">=</span><span class="phpKeyword"> new </span><span class="htmlText">SerializationTest</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span><span class="htmlText">h3</span><span class="phpOperator">&gt;</span><span class="htmlText">Start Value</span><span class="phpOperator">:</span><span class="phpOperator">&lt;</span>/h3<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">counter </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
	<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myString</span><span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> $myObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>myString;
	$serializeData_1 <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myObject<span class="phpOperator">)</span><span class="phpText">;</span>
	$serializeData_2 <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myObject<span class="phpOperator">)</span><span class="phpText">;</span>
	$serializeData_3 <span class="phpOperator">=</span> <span class="phpFunction">serialize</span><span class="phpOperator">(</span>$myObject<span class="phpOperator">)</span><span class="phpText">;</span>
	$unSerializeData_1 <span class="phpOperator">=</span><span class="htmlText"> un</span><span class="phpFunction">serialize</span><span class="phpOperator">(</span>$serializeData_1<span class="phpOperator">)</span><span class="phpText">;</span>
	$unSerializeData_2 <span class="phpOperator">=</span><span class="htmlText"> un</span><span class="phpFunction">serialize</span><span class="phpOperator">(</span>$serializeData_2<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>And here is the result if we serialize 3 (three)  times and unserialize 2 (two) times.</p>
<p><a href="http://www.tanzilo.com/wp-content/uploads/2008/12/serialize_2.jpg"><img class="alignleft size-full wp-image-66" title="serialize_2" src="http://www.tanzilo.com/wp-content/uploads/2008/12/serialize_2.jpg" alt="" width="236" height="591" style="float:none;" /></a></p>
<p>Although we initialized <strong>$this-&gt;counter</strong> variable in the <strong>__construct()</strong> function, it is not used or has no effect in <strong>__wakeup()</strong> function. But it works properly in <strong>__sleep()</strong> or <strong>serialize()</strong> process. But what is the reason? The explanation is simple. The <strong>__wakeup()</strong> is part of the process when your data is retrieved from memory. Another thing is - did you notice the array return in the <strong>__sleep()</strong> function? Without returning this, the process often does not work. So, please remember to keep in your code.</p>
<p><span style="text-decoration: underline;">You can download these small pieces of code files from here:</span><br />
<a title="PHP Serialize and Unserialize" href="http://www.tanzilo.com/demo/code/serialize/serialize.zip" target="_blank">http://www.tanzilo.com/demo/code/serialize/serialize.zip</a></p>
<p>Thank you for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tanzilo.com/2008/12/31/php-serialization-unserialization-explanation-code-example/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PHP &#038; MySQL: Creating a website in your local language smoothly</title>
		<link>http://www.tanzilo.com/2008/12/29/php-mysql-creating-a-website-in-your-local-language-smoothly/</link>
		<comments>http://www.tanzilo.com/2008/12/29/php-mysql-creating-a-website-in-your-local-language-smoothly/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 12:04:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Afrikaans]]></category>

		<category><![CDATA[Albanian]]></category>

		<category><![CDATA[Amharic]]></category>

		<category><![CDATA[Arabic]]></category>

		<category><![CDATA[Armenian]]></category>

		<category><![CDATA[Assamese]]></category>

		<category><![CDATA[Aymara]]></category>

		<category><![CDATA[Azeri]]></category>

		<category><![CDATA[Belarusian]]></category>

		<category><![CDATA[Bengali]]></category>

		<category><![CDATA[Bislama]]></category>

		<category><![CDATA[Bosnian]]></category>

		<category><![CDATA[Bulgarian]]></category>

		<category><![CDATA[Burmese]]></category>

		<category><![CDATA[Catalan]]></category>

		<category><![CDATA[Chinese]]></category>

		<category><![CDATA[Creating]]></category>

		<category><![CDATA[Croatian]]></category>

		<category><![CDATA[Czech]]></category>

		<category><![CDATA[Danish]]></category>

		<category><![CDATA[Dari]]></category>

		<category><![CDATA[Develop]]></category>

		<category><![CDATA[Dhivehi]]></category>

		<category><![CDATA[Dutch]]></category>

		<category><![CDATA[Dzongkha]]></category>

		<category><![CDATA[English]]></category>

		<category><![CDATA[Esperanto]]></category>

		<category><![CDATA[Estonian]]></category>

		<category><![CDATA[Fijian]]></category>

		<category><![CDATA[Filipino]]></category>

		<category><![CDATA[Finnish]]></category>

		<category><![CDATA[French]]></category>

		<category><![CDATA[Frisian]]></category>

		<category><![CDATA[Gagauz]]></category>

		<category><![CDATA[Georgian]]></category>

		<category><![CDATA[German]]></category>

		<category><![CDATA[Greek]]></category>

		<category><![CDATA[Guaraní]]></category>

		<category><![CDATA[Gujarati]]></category>

		<category><![CDATA[Haitian Creole]]></category>

		<category><![CDATA[Hebrew]]></category>

		<category><![CDATA[Hindi]]></category>

		<category><![CDATA[Hiri Motu]]></category>

		<category><![CDATA[Hungarian]]></category>

		<category><![CDATA[Icelandic]]></category>

		<category><![CDATA[Indonesian]]></category>

		<category><![CDATA[Italian]]></category>

		<category><![CDATA[Japanese]]></category>

		<category><![CDATA[Kannada]]></category>

		<category><![CDATA[Kashmiri]]></category>

		<category><![CDATA[Kazakh]]></category>

		<category><![CDATA[Khmer]]></category>

		<category><![CDATA[Korean]]></category>

		<category><![CDATA[Kurdish]]></category>

		<category><![CDATA[Kyrgyz]]></category>

		<category><![CDATA[Lao]]></category>

		<category><![CDATA[Latvian]]></category>

		<category><![CDATA[Lithuanian]]></category>

		<category><![CDATA[local language]]></category>

		<category><![CDATA[Luxembourgish]]></category>

		<category><![CDATA[Macedonian]]></category>

		<category><![CDATA[Malagasy]]></category>

		<category><![CDATA[Malay]]></category>

		<category><![CDATA[Malayalam]]></category>

		<category><![CDATA[Maltese]]></category>

		<category><![CDATA[Mandarin]]></category>

		<category><![CDATA[Māori]]></category>

		<category><![CDATA[Marathi]]></category>

		<category><![CDATA[Mayan]]></category>

		<category><![CDATA[Moldovan]]></category>

		<category><![CDATA[Mongolian]]></category>

		<category><![CDATA[Montenegrin]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[Náhuatl]]></category>

		<category><![CDATA[Ndebele]]></category>

		<category><![CDATA[Nepali]]></category>

		<category><![CDATA[New Zealand Sign Language]]></category>

		<category><![CDATA[Northern Sotho]]></category>

		<category><![CDATA[Norwegian]]></category>

		<category><![CDATA[Oriya]]></category>

		<category><![CDATA[Papiamento]]></category>

		<category><![CDATA[Pashto]]></category>

		<category><![CDATA[Persian]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Polish]]></category>

		<category><![CDATA[Portuguese]]></category>

		<category><![CDATA[Punjabi]]></category>

		<category><![CDATA[Quechua]]></category>

		<category><![CDATA[Rhaeto-Romansh]]></category>

		<category><![CDATA[Romanian]]></category>

		<category><![CDATA[Russian]]></category>

		<category><![CDATA[Sanskrit]]></category>

		<category><![CDATA[Serbian]]></category>

		<category><![CDATA[Shona]]></category>

		<category><![CDATA[Sindhi]]></category>

		<category><![CDATA[Sinhala]]></category>

		<category><![CDATA[Slovak]]></category>

		<category><![CDATA[Slovene]]></category>

		<category><![CDATA[Somali]]></category>

		<category><![CDATA[Sotho]]></category>

		<category><![CDATA[Spanish]]></category>

		<category><![CDATA[Swahili]]></category>

		<category><![CDATA[Swati]]></category>

		<category><![CDATA[Swedish]]></category>

		<category><![CDATA[Tagalog]]></category>

		<category><![CDATA[Tajik]]></category>

		<category><![CDATA[Tamil]]></category>

		<category><![CDATA[Telugu]]></category>

		<category><![CDATA[Tetum]]></category>

		<category><![CDATA[Thai]]></category>

		<category><![CDATA[Tok Pisin]]></category>

		<category><![CDATA[Tsonga]]></category>

		<category><![CDATA[Tswana]]></category>

		<category><![CDATA[Turkish]]></category>

		<category><![CDATA[Turkmen]]></category>

		<category><![CDATA[Ukrainian]]></category>

		<category><![CDATA[Urdu]]></category>

		<category><![CDATA[Uzbek]]></category>

		<category><![CDATA[Venda]]></category>

		<category><![CDATA[Vietnamese]]></category>

		<category><![CDATA[website]]></category>

		<category><![CDATA[Welsh]]></category>

		<category><![CDATA[Xhosa]]></category>

		<category><![CDATA[Yiddish]]></category>

		<category><![CDATA[Zulu]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=63</guid>
		<description><![CDATA[Hello Developer,
You know English is the international language and accepted as international communication. So, most of the websites have been developed in English. But in many other times, a developer needs to work with local languages where they are developing a website in PHP. If you develop in local language, you need to know a [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Developer,</p>
<p>You know English is the international language and accepted as international communication. So, most of the websites have been developed in English. But in many other times, a developer needs to work with local languages where they are developing a website in PHP. If you develop in local language, you need to know a small trick and that will show your content properly in all browsers smoothly.</p>
<p>So, what is the technique?</p>
<p>Well. Let me explain step by step.</p>
<p><span style="text-decoration: underline;"><strong>Step One: An observation</strong></span><br />
I will show you the source code of two Bengali newspaper. In this newspaper: <a title="Prothom Alo" href="http://www.prothom-alo.com/" target="_blank">http://www.prothom-alo.com</a>, the fonts and text comes properly in all browsers. But in this newspaper: <a title="Ittefaq" href="http://www.ittefaq.com" target="_blank">http://www.ittefaq.com</a>, it can show text and fonts properly only in Internet Explorer.</p>
<p>Now the matter is we must make sure our content will be displayed properly in any browser. Right?</p>
<p>OK. So what is the difference between the two websites I just gave example?</p>
<p>If you take a look at the source code of the first website&#8217;s content, you will find it is like this:<span style="text-decoration: underline;">&amp;<span class="entity">#2488;</span>&amp;<span class="entity">#2691;</span>&amp;<span class="entity">#2474;</span>&amp;<span class="entity">#2494;</span>&amp;<span class="entity">#2470;</span>&amp;<span class="entity">#2453;</span></span></p>
<p>This is another website that had been developed as smooth site in the same technique: <a title="bdnews 24" href="http://www.bdnews24.com/bangla" target="_blank">http://www.bdnews24.com/bangla</a>. If you check its code, you will see that it uses same type of code for its text.</p>
<p>So, what are these <span style="text-decoration: underline;">&amp;<span class="entity">#2474;</span>&amp;<span class="entity">#2494;</span>&amp;<span class="entity">#2470;</span>&amp;<span class="entity">#2453;</span>&amp;<span class="entity">#2496;</span>&amp;</span><span class="entity"><span style="text-decoration: underline;">#2527;</span> things? It is very interesting that these are universal representation of local language in HTML entities. For every character of any local language, there is a unique and fixed symbol defined such as </span><span style="text-decoration: underline;">&amp;<span class="entity">#2474;</span></span><span class="entity"> in HTML entities</span><span class="entity">. When you bring this kind of text in your browser source code, the site content looks smooth without any break and fonts displays properly.</span></p>
<p>Now if you open the source code of <a title="Ittefaq" href="http://www.ittefaq.com" target="_blank">http://www.ittefaq.com</a>, you will see something like <span style="text-decoration: underline;">AvR beg RvZxq msm` wbe©vP‡b jovB n‡e †RvU-gnv‡Rv‡Ui g‡a¨</span>. The matter is they are also showing Bengali news content, but in a different way that is not useful in cross-broswer platform. This is often totally recognized by only Internet Explorer and often partially recognized by other browsers.</p>
<p><span style="text-decoration: underline;"><strong>Step Two: Storing your local language content in the database</strong></span><br />
You see I have some content in my local language (Bangla) in the database.</p>
<p><a href="http://www.tanzilo.com/wp-content/uploads/2008/12/bangla_news_content.jpg"><img class="alignleft size-full wp-image-64" style="float:none;" title="bangla_news_content" src="http://www.tanzilo.com/wp-content/uploads/2008/12/bangla_news_content.jpg" alt="" width="500" height="174" /></a></p>
<p><span style="text-decoration: underline;"><strong>Step Three: Converting your local language text in Universal code</strong></span><br />
Well. This is extremely easy.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">class </span><span class="htmlText">UnicodeHandler</span>
	<span class="phpOperator">{</span>
	<span class="phpKeyword">	var </span>$dbLink<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$sqlQuery<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$dbResult;
	<span class="phpKeyword">	var </span>$dbRow<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$salary<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$bonus<span class="phpText">;</span>
		<span class="phpComment">/* Use this constructor in<span class="phpKeyword"> case </span><span class="htmlText">your PHP version is </span><span class="phpNumber">4</span><span class="phpOperator">.</span> */</span>
<span class="phpComment">/*
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> UnicodeHandler</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">mySalary </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myBonus </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_connect</span><span class="phpOperator">(</span><span class="phpString">&#8216;localhost&#8217;</span>, <span class="phpString">&#8216;root&#8217;</span>, <span class="phpString">&#8221;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_language</span><span class="phpOperator">(</span><span class="phpString">&#8216;uni&#8217;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_internal_encoding</span><span class="phpOperator">(</span><span class="phpString">&#8216;UTF-<span class="phpNumber">8</span>&#8216;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_select_db</span><span class="phpOperator">(</span><span class="phpString">&#8216;test&#8217;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;set names <span class="phpString">&#8216;utf8&#8242;</span>&#8220;</span>,<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
*/</span>
		<span class="phpComment">/* Use this constructor in<span class="phpKeyword"> case </span><span class="htmlText">your PHP version is </span><span class="phpNumber">5</span><span class="htmlText"> or </span><span class="phpNumber">5</span><span class="phpOperator">+</span>. */</span>
		<span class="phpComment">/* I assume you are using PHP <span class="phpNumber">5</span><span class="htmlText"> or </span><span class="phpNumber">5</span><span class="phpOperator">+</span>. */</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> __construct</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">mySalary </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myBonus </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_connect</span><span class="phpOperator">(</span><span class="phpString">&#8216;localhost&#8217;</span>, <span class="phpString">&#8216;root&#8217;</span>, <span class="phpString">&#8221;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_language</span><span class="phpOperator">(</span><span class="phpString">&#8216;uni&#8217;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_internal_encoding</span><span class="phpOperator">(</span><span class="phpString">&#8216;UTF-<span class="phpNumber">8</span>&#8216;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_select_db</span><span class="phpOperator">(</span><span class="phpString">&#8216;test&#8217;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;set names <span class="phpString">&#8216;utf8&#8242;</span>&#8220;</span>,<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> displayLocalContent</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8220;SELECT * FROM unitext &#8220;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span>sqlQuery, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	while<span class="phpOperator">(</span></span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_fetch_object</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult</span><span class="phpOperator">)</span><span class="phpOperator">)</span>
			<span class="phpOperator">{</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;News<span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">convertToLocalHtml</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">news</span><span class="phpOperator">)</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
			<span class="phpOperator">}</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> convertToLocalHtml</span><span class="phpOperator">(</span>$localHtmlEquivalent<span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			$localHtmlEquivalent <span class="phpOperator">=</span> <span class="phpFunction">mb_convert_encoding</span><span class="phpOperator">(</span>$localHtmlEquivalent,<span class="phpString">&#8220;HTML-ENTITIES&#8221;</span>,<span class="phpString">&#8220;UTF-<span class="phpNumber">8</span>&#8220;</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	return </span>$localHtmlEquivalent;
		<span class="phpOperator">}</span>
	<span class="phpOperator">}</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>The <span style="text-decoration: underline;">displayLocalContent()</span> function is going to display the news and <span style="text-decoration: underline;">convertToLocalHtml()</span> function converts my utf-8 content to HTML entities.</p>
<p>And here in <strong>index.php</strong> I am executing my <span style="text-decoration: underline;">displayLocalContent()</span> function.</p>
<pre class="php">
<span class="htmlOtherTag">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</span>
<span class="htmlOtherTag">&lt;html xmlns=<span class="htmlAttributeValue">&quot;http://www.w3.org/1999/xhtml&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;head&gt;</span>
<span class="htmlOtherTag">&lt;meta http-equiv=<span class="htmlAttributeValue">&quot;Content-Type&quot;</span> content=<span class="htmlAttributeValue">&quot;text/html; charset=utf-8&quot;</span> /&gt;</span>
<span class="htmlOtherTag">&lt;title&gt;</span>Displaying Your Local Language<span class="htmlOtherTag">&lt;/title&gt;</span>
<span class="htmlOtherTag">&lt;/head&gt;</span>
<span class="htmlOtherTag">&lt;body&gt;</span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpKeyword"><span class="phpKeyword">	include_once </span></span><span class="phpString">&#8216;<span class="phpKeyword">class<span class="phpOperator">.</span></span>unicode.php&#8217;</span><span class="phpText">;</span>
	$unicodeObject <span class="phpOperator">=</span><span class="phpKeyword"> new </span><span class="htmlText">UnicodeHandler</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	$unicodeObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">displayLocalContent</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="htmlOtherTag">&lt;/body&gt;</span>
<span class="htmlOtherTag">&lt;/html&gt;</span>
</pre>
<p>As a result, the output is now as <span style="text-decoration: underline;">ঢাকা, ডিসে</span> etc.</p>
<p><span style="text-decoration: underline;"><strong>Step Four: You need to check my other posting for SELECT, INSERT &amp; UPDATE your local language.</strong></span><br />
Here goes my other article so that you can perform all required operations for storing and displaying information in browser smoothly:<br />
<a title="Php mysql unicode solution to chinese russian or any language" href="http://www.tanzilo.com/2008/10/13/php-mysql-unicode-solution-to-chinese-russian-or-any-language/" target="_blank">http://www.tanzilo.com/2008/10/13/php-mysql-unicode-solution-to-chinese-russian-or-any-language/</a></p>
<p><span style="text-decoration: underline;"><strong>An alternative way</strong></span><br />
I have an alternative way in my mind and that is when you store the data in the database, you can first convert them to universal code such as <span style="text-decoration: underline;">&amp;<span class="entity">#2453;</span>&amp;<span class="entity">#2496;</span>&amp;</span><span class="entity"><span style="text-decoration: underline;">#2527;</span></span>and then directly show your text.</p>
<p><strong>This article will cover any language such as</strong> Afrikaans, Albanian, Amharic, Arabic, Armenian, Assamese, Aymara, Azeri, Belarusian, Bengali, Bislama, Bosnian, Bulgarian, Burmese, Catalan, Chinese, Mandarin,Croatian, Czech, Danish, Dari, Dhivehi, Dutch, Dzongkha, English, Esperanto, Estonian, Fijian, Filipino, Finnish, French, Frisian,  Gagauz, Georgian, German, Greek, Guaraní, Gujarati, Haitian Creole, Hebrew, Hindi, Hiri Motu, Hungarian, Icelandic, Indonesian, Italian, Japanese, Kannada, Kashmiri, Kazakh, Khmer, Korean, Kurdish, Kyrgyz, Lao, Latvian, Lithuanian, Luxembourgish, Macedonian, Malagasy, Malay, Malayalam, Maltese, Māori, Marathi, Mayan, Moldovan, Mongolian, Montenegrin,Náhuatl, Ndebele, Nepali, New Zealand Sign Language, Northern Sotho, Norwegian, Oriya, Papiamento, Pashto, Persian, Polish, Portuguese, Punjabi, Quechua, Romanian, Rhaeto-Romansh, Russian, Sanskrit, Serbian, Shona, Sindhi, Sinhala, Slovak, Slovene, Somali, Sotho, Spanish, Swahili, Swati, Swedish, Tagalog, Tajik, Tamil, Telugu, Tetum, Thai, Tok Pisin, Tsonga, Tswana, Turkish, Turkmen, Ukrainian, Urdu, Uzbek, Venda, Vietnamese, Welsh, Xhosa, Yiddish, Zulu etc.</p>
<p>You can also download this small piece of code from here:<br />
<a title="convert to unicode" href="http://www.tanzilo.com/demo/code/convert_to_unicode/convert_to_unicode.zip" target="_blank">http://www.tanzilo.com/demo/code/convert_to_unicode/convert_to_unicode.zip</a></p>
<p>Thank you for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tanzilo.com/2008/12/29/php-mysql-creating-a-website-in-your-local-language-smoothly/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PHP &#038; MySQL: Unicode number add, subtract etc for any language</title>
		<link>http://www.tanzilo.com/2008/12/23/php-mysql-unicode-number-add-subtract-etc-for-any-language/</link>
		<comments>http://www.tanzilo.com/2008/12/23/php-mysql-unicode-number-add-subtract-etc-for-any-language/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 18:22:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[add]]></category>

		<category><![CDATA[any language]]></category>

		<category><![CDATA[Code]]></category>

		<category><![CDATA[divide]]></category>

		<category><![CDATA[Example]]></category>

		<category><![CDATA[multiply]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[number]]></category>

		<category><![CDATA[solution]]></category>

		<category><![CDATA[subtract]]></category>

		<category><![CDATA[Unicode]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=60</guid>
		<description><![CDATA[Hello Coders!
Recently a visitor from my country asked me how he can add Unicode numbers stored in MySQL database.  I was thinking that it is really a good question. Because you may store any number in any local language to your database and later you may try to add or delete them.
For example, in Bangla [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Coders!</p>
<p>Recently a visitor from my country asked me how he can add Unicode numbers stored in MySQL database.  I was thinking that it is really a good question. Because you may store any number in any local language to your database and later you may try to add or delete them.</p>
<p>For example, in Bangla language an employee&#8217;s salary can be <span style="text-decoration: underline;"><strong><span class="Apple-style-span" style="border-collapse: separate; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family: 'Times New Roman'; color: #000000;">২৪</span><span class="Apple-style-span" style="border-collapse: separate; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family: 'Times New Roman'; color: #000000;">১৮৬</span></strong></span> (which is 24186 in English) bucks and the coder may want to store it in a table under <span style="text-decoration: underline;">salary</span> field. Another field can be bonus and it can be <span style="text-decoration: underline;"><strong><span class="Apple-style-span" style="border-collapse: separate; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family: 'Times New Roman'; color: #000000;">২০০</span></strong></span><span style="text-decoration: underline;"><strong><span class="Apple-style-span" style="border-collapse: separate; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family: 'Times New Roman'; color: #000000;">০</span></strong></span> (2000 in English). Now the coder may want to add them up anytime required. You know adding 24186 and 2000 is easy. But what the coder may do in case the values are stored in a local language?</p>
<p>The visitor asked me how he can use the MySQL <strong>sum()</strong> function in case the data are stored in Unicode format. Well. I do not think MySQL&#8217;s unicode will support the <strong>sum()</strong> function or even if there is one I do not know frankly speaking. So, I thought and developed an alternative solution.</p>
<p>Here is the alternative solution steps:</p>
<ol>
<li>I get the unicode numbers from the database</li>
<li>Convert them to English number</li>
<li>Sum them up or anything like substract, multiply or divide etc</li>
<li>Convert the result to Unicode once again</li>
</ol>
<p>Thus, it looks simple procedure. Right?</p>
<p><span style="color: #800000;"><strong>Before we start I would like to suggest you download the codes from the bottom link of the page and take a look. Because some code may not look as the original one for browser&#8217;s case sensitiveness. So, it is better to look at the original code from the download link below.</strong></span></p>
<p>So,  I wrote a small class to handle the whole procedure and here goes the coding of my class:</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">class </span><span class="htmlText">UnicodeHandler</span>
	<span class="phpOperator">{</span>
	<span class="phpKeyword">	var </span>$dbLink<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$sqlQuery<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$dbResult;
	<span class="phpKeyword">	var </span>$dbRow<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$salary<span class="phpText">;</span>
	<span class="phpKeyword">	var </span>$bonus<span class="phpText">;</span>
		<span class="phpComment">/* Use this constructor in<span class="phpKeyword"> case </span><span class="htmlText">your PHP version is </span><span class="phpNumber">4</span><span class="phpOperator">.</span> */</span>
		<span class="phpComment">/*
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> UnicodeHandler</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">mySalary </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myBonus </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_connect</span><span class="phpOperator">(</span><span class="phpString">&#8216;localhost&#8217;</span>, <span class="phpString">&#8216;root&#8217;</span>, <span class="phpString">&#8221;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_language</span><span class="phpOperator">(</span><span class="phpString">&#8216;uni&#8217;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_internal_encoding</span><span class="phpOperator">(</span><span class="phpString">&#8216;UTF-<span class="phpNumber">8</span>&#8216;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_select_db</span><span class="phpOperator">(</span><span class="phpString">&#8216;test&#8217;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;set names <span class="phpString">&#8216;utf8&#8242;</span>&#8220;</span>,<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
		*/</span>
		<span class="phpComment">/* Use this constructor in<span class="phpKeyword"> case </span><span class="htmlText">your PHP version is </span><span class="phpNumber">5</span><span class="htmlText"> or </span><span class="phpNumber">5</span><span class="phpOperator">+</span>. */</span>
		<span class="phpComment">/* I assume you are using PHP <span class="phpNumber">5</span><span class="htmlText"> or </span><span class="phpNumber">5</span><span class="phpOperator">+</span>. */</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> __construct</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">mySalary </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">myBonus </span><span class="phpOperator">=</span> 0;
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_connect</span><span class="phpOperator">(</span><span class="phpString">&#8216;localhost&#8217;</span>, <span class="phpString">&#8216;root&#8217;</span>, <span class="phpString">&#8221;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_language</span><span class="phpOperator">(</span><span class="phpString">&#8216;uni&#8217;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mb_internal_encoding</span><span class="phpOperator">(</span><span class="phpString">&#8216;UTF-<span class="phpNumber">8</span>&#8216;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_select_db</span><span class="phpOperator">(</span><span class="phpString">&#8216;test&#8217;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;set names <span class="phpString">&#8216;utf8&#8242;</span>&#8220;</span>,<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> displayTotalPayment</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			<span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpString">&#8220;SET character_set_results=utf8&#8243;</span>, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">sqlQuery </span><span class="phpOperator">=</span> <span class="phpString">&#8220;SELECT * FROM bangla_number &#8220;</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_query</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span>sqlQuery, <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbLink</span><span class="phpOperator">)</span><span class="phpText">;</span>
			<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">total </span><span class="phpOperator">=</span> 0;
		<span class="phpKeyword">	while<span class="phpOperator">(</span></span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow </span><span class="phpOperator">=</span> <span class="phpFunction">mysql_fetch_object</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbResult</span><span class="phpOperator">)</span><span class="phpOperator">)</span>
			<span class="phpOperator">{</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;Employee ID # &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">id </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;Salary<span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">salary </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;Bonus<span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">bonus </span><span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
				$totalPayment <span class="phpOperator">=</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">convertToEnglishNumber</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">salary</span><span class="phpOperator">)</span> <span class="phpOperator">+</span>
				<span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">convertToEnglishNumber</span><span class="phpOperator">(</span><span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">dbRow</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">bonus</span><span class="phpOperator">)</span><span class="phpText">;</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;Total Payment<span class="phpOperator">:</span> &#8216;</span> <span class="phpOperator">.</span> <span class="phpScriptVar">$this</span><span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">convertToBanglaNumber</span><span class="phpOperator">(</span>$totalPayment<span class="phpOperator">)</span> <span class="phpOperator">.</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
				<span class="phpFunction">echo</span> <span class="phpString">&#8216;<span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>br /<span class="phpOperator">&gt;</span>&#8216;</span><span class="phpText">;</span>
			<span class="phpOperator">}</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> convertToEnglishNumber</span><span class="phpOperator">(</span>$unicodeNumber<span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">mb_convert_encoding</span><span class="phpOperator">(</span>$unicodeNumber,<span class="phpString">&#8220;HTML-ENTITIES&#8221;</span>,<span class="phpString">&#8220;UTF-<span class="phpNumber">8</span>&#8220;</span><span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2534<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">0</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2535<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">1</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2536<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">2</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2537<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">3</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2538;&#8217;</span>, <span class="phpString">&#8216;<span class="phpNumber">4</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2539;&#8217;</span>, <span class="phpString">&#8216;<span class="phpNumber">5</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2540;&#8217;</span>, <span class="phpString">&#8216;<span class="phpNumber">6</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2541<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">7</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2542<span class="phpText">;</span>&#8216;</span>, <span class="phpString">&#8216;<span class="phpNumber">8</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpFunction">str_replace</span><span class="phpOperator">(</span><span class="phpString">&#8216;&#2543;&#8217;</span>, <span class="phpString">&#8216;<span class="phpNumber">9</span>&#8216;</span>, $englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	return </span>$englishNumber<span class="phpText">;</span>
		<span class="phpOperator">}</span>
		<span class="phpFunctionKeyword">function</span><span class="htmlText"> convertToBanglaNumber</span><span class="phpOperator">(</span>$englishNumber<span class="phpOperator">)</span>
		<span class="phpOperator">{</span>
			$englishNumber <span class="phpOperator">=</span> <span class="phpVarType"><span class="phpOperator">(</span><span class="htmlText">string</span><span class="phpOperator">)</span></span> $englishNumber<span class="phpText">;</span>
			$banglaNumber <span class="phpOperator">=</span> <span class="phpString">&#8221;</span><span class="phpText">;</span>
			$indexLimit <span class="phpOperator">=</span> <span class="phpFunction">strlen</span><span class="phpOperator">(</span>$englishNumber<span class="phpOperator">)</span><span class="phpText">;</span>
		<span class="phpKeyword">	for<span class="phpOperator">(</span></span>$i<span class="phpOperator">=</span>0; $i<span class="phpOperator">&lt;</span>$indexLimit; $i<span class="phpOperator"><span class="phpOperator">+</span><span class="phpOperator">+</span></span><span class="phpOperator">)</span>
			<span class="phpOperator">{</span>
			<span class="phpKeyword">	switch<span class="phpOperator">(</span></span>$englishNumber<span class="phpOperator">[</span>$i<span class="phpOperator">]</span><span class="phpOperator">)</span>
				<span class="phpOperator">{</span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">0</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2534<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">1</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2535<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">2</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2536<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">3</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2537<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">4</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2538;&#8217;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">5</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2539;&#8217;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">6</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2540;&#8217;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">7</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2541<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">8</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2542<span class="phpText">;</span>&#8216;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	case </span><span class="phpString">&#8220;<span class="phpNumber">9</span>&#8220;</span><span class="phpOperator">:</span>
						$banglaNumber <span class="phpOperator">.=</span> <span class="phpString">&#8216;&#2543;&#8217;</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpKeyword">	default<span class="phpOperator">:</span></span>
						$banglaNumber <span class="phpOperator">.=</span> $englishNumber<span class="phpOperator">[</span>$i<span class="phpOperator">]</span><span class="phpText">;</span>
					<span class="phpKeyword">	break<span class="phpText">;</span></span>
				<span class="phpOperator">}</span>
			<span class="phpOperator">}</span>
		<span class="phpKeyword">	return </span>$banglaNumber<span class="phpText">;</span>
		<span class="phpOperator">}</span>
	<span class="phpOperator">}</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>If you are not using Bengali language, you need to configure the equivalent number values in <span style="text-decoration: underline;">convertToEnglishNumber</span> and <span style="text-decoration: underline;">convertToBanglaNumber</span> functions.</p>
<p>And here goes the page where I am executing the <span style="text-decoration: underline;">displayTotalPayment()</span> function.</p>
<pre class="php">
<span class="htmlOtherTag">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</span>
<span class="htmlOtherTag">&lt;html xmlns=<span class="htmlAttributeValue">&quot;http://www.w3.org/1999/xhtml&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;head&gt;</span>
<span class="htmlOtherTag">&lt;meta http-equiv=<span class="htmlAttributeValue">&quot;Content-Type&quot;</span> content=<span class="htmlAttributeValue">&quot;text/html; charset=utf-8&quot;</span> /&gt;</span>
<span class="htmlOtherTag">&lt;title&gt;</span>Unicode Number Adding<span class="htmlOtherTag">&lt;/title&gt;</span>
<span class="htmlOtherTag">&lt;/head&gt;</span>
<span class="htmlOtherTag">&lt;body&gt;</span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
<span class="phpKeyword"><span class="phpKeyword">	include_once </span></span><span class="phpString">&#8216;<span class="phpKeyword">class<span class="phpOperator">.</span></span>unicode.php&#8217;</span><span class="phpText">;</span>
	$salaryObject <span class="phpOperator">=</span><span class="phpKeyword"> new </span><span class="htmlText">UnicodeHandler</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	$salaryObject<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">displayTotalPayment</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="htmlOtherTag">&lt;/body&gt;</span>
<span class="htmlOtherTag">&lt;/html&gt;</span>
</pre>
<p>Now the final result looks like this:</p>
<p><a href="http://www.tanzilo.com/wp-content/uploads/2008/12/add_bangla_number.jpg"><img class="alignleft size-full wp-image-61" style="float:none;" title="add_bangla_number" src="http://www.tanzilo.com/wp-content/uploads/2008/12/add_bangla_number.jpg" alt="" width="210" height="531" /></a></p>
<p>Oh! One important thing. If you are coding for European number format, you need to do some modification to handle the comma (,) factor in the number in case required.</p>
<p>Thus, if you use this small tricky method, you can add, subtract,  multiply or divide any local numbers such as Russian, Chinese, Arabic, Spanish, German, Polish, Turkey, Hindi etc.</p>
<p>You can also download this small piece of code from here:<br />
<a title="unicode number add" href="http://www.tanzilo.com/demo/code/unicode_number_add/unicode_number_add.zip" target="_blank">http://www.tanzilo.com/demo/code/unicode_number_add/unicode_number_add.zip</a></p>
<p>Thank you for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tanzilo.com/2008/12/23/php-mysql-unicode-number-add-subtract-etc-for-any-language/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wordpress: get page id and content with example &#038; code</title>
		<link>http://www.tanzilo.com/2008/12/19/wordpress-get-page-id-and-content-with-example-code/</link>
		<comments>http://www.tanzilo.com/2008/12/19/wordpress-get-page-id-and-content-with-example-code/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 16:44:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Wordpress]]></category>

		<category><![CDATA[Code]]></category>

		<category><![CDATA[content]]></category>

		<category><![CDATA[Example]]></category>

		<category><![CDATA[GET]]></category>

		<category><![CDATA[id]]></category>

		<category><![CDATA[page content]]></category>

		<category><![CDATA[page id]]></category>

		<category><![CDATA[print]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=58</guid>
		<description><![CDATA[Hey Guys!
Often I see people coming to my site searching with the terms wordpress get page id, wordpress get page content or something similar. I think wordpress developers face situations when they need to get page or post information in customized way. It happened to me too and I would like to share it with [...]]]></description>
			<content:encoded><![CDATA[<p>Hey Guys!</p>
<p>Often I see people coming to my site searching with the terms <span style="text-decoration: underline;"><strong>wordpress get page id</strong></span>, <span style="text-decoration: underline;"><strong>wordpress get page content</strong></span> or something similar. I think wordpress developers face situations when they need to get page or post information in customized way. It happened to me too and I would like to share it with others since often people are coming to search this information.</p>
<p>Well. It is very easy and we can solve it quickly.<br />
OK. Now let me show you how to get these information.</p>
<p>Remember one thing that is important for wordpress data fetching of this kind. Your posts and pages information is saved in a single database table and that is <strong>wp_posts</strong>. The <strong>wp_</strong> is the prefix of you database and may differ. But most of the times the database table name is <strong>wp_posts</strong> and other times it is <strong>YourCustomPrefix_posts</strong>. We are going to fetch data from this table.</p>
<p><span style="text-decoration: underline;"><strong>Wordpress - print page id:</strong></span></p>
<p>There is a built-in wordpress function using which you can print the post or page id. When you call this, this directly prints this inforation in your page without the need to use the built-in PHP <span style="text-decoration: underline;"><strong>echo</strong></span> or <span style="text-decoration: underline;"><strong>print</strong></span> function. Remember to keep it in the while loop.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> if </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
		<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="htmlText"> the_ID</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endwhile<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p><span style="text-decoration: underline;"><strong>Wordpress - get page id:</strong></span></p>
<p>There is a global variable post which contains the related information of the currest post or page. The name of the variable is: <span style="text-decoration: underline;">$post</span> and it is actually an object. You can access information just as you access variables from an object. Remember to keep it in the while loop.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> if </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
        <span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">	global </span>$post;
		<span class="phpFunction">echo</span> $post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">ID</span><span class="phpText">;</span>
        <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endwhile<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>You can print all the information in the $post object to see all the variables and their values that is contains.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> if </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
        <span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">	global </span>$post;
		<span class="phpFunction">var_dump</span><span class="phpOperator">(</span>$post<span class="phpOperator">)</span><span class="phpText">;</span>
        <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endwhile<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p><span style="text-decoration: underline;"><strong>Wordpress - get page content:</strong></span></p>
<p>Now you know you can get the page or post content from $post-&gt;post_content variable. But if you echo or print them, they may look somewhat without formatting. So, you need to use PHP built-in <strong>nl2br()</strong> function to look the content as it is.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> if </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
        <span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">	global </span>$post;
		<span class="phpFunction">echo</span> <span class="phpFunction">nl2br</span><span class="phpOperator">(</span>$post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">post_content</span><span class="phpOperator">)</span><span class="phpText">;</span>
        <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endwhile<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p><span style="text-decoration: underline;"><strong>Wordpress - get any information of your page or post:</strong></span></p>
<p>You know you can print all information to check all the available variables and their values through using PHP&#8217;s built-in <strong>var_dump()</strong> function. Suppose you need to get the post title, post type and posting time. We can get them easily in this way.</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> if </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> while </span><span class="phpOperator">(</span><span class="htmlText">have_posts</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">:</span><span class="htmlText"> the_post</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
        <span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpKeyword">	global </span>$post;
		<span class="phpFunction">echo</span> $post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">post_title</span><span class="phpText">;</span>
		<span class="phpFunction">echo</span> $post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">post_type</span><span class="phpText">;</span>
		<span class="phpFunction">echo</span> $post<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">post_date</span><span class="phpText">;</span>
        <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
	<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endwhile<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span><span class="phpKeyword"> endif<span class="phpText">;</span></span> <span class="phpScriptTag"><span class="phpOperator">?</span><span class="phpOperator">&gt;</span></span>
</pre>
<p>Please notice that post_title, post_type and post_date are all several database fields from <strong>wp_posts</strong> table of our wordpress database.</p>
<p>Very easy. Right? And that is all for getting the page or post information.</p>
<p>Thank you for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tanzilo.com/2008/12/19/wordpress-get-page-id-and-content-with-example-code/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wordpress: Custom URL rewrite and reading URL values</title>
		<link>http://www.tanzilo.com/2008/12/17/wordpress-custom-url-rewrite-and-reading-url-values/</link>
		<comments>http://www.tanzilo.com/2008/12/17/wordpress-custom-url-rewrite-and-reading-url-values/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 20:48:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Wordpress]]></category>

		<category><![CDATA[Custom]]></category>

		<category><![CDATA[read]]></category>

		<category><![CDATA[rewrite]]></category>

		<category><![CDATA[URL]]></category>

		<category><![CDATA[values]]></category>

		<guid isPermaLink="false">http://www.tanzilo.com/?p=59</guid>
		<description><![CDATA[Hello!
Recently I was working for a Irish guy who has opened a wordpress blog few months ago. I did the theme for him. Recently he requested me for modifying and/or upgrading the project. One of the project requirements was URL rewriting. For example, there can a URL as follows:
http://www.sitename.com/index.php?group_name=My-Input-Value-Goes-Here
But after rewrite, the URL should look [...]]]></description>
			<content:encoded><![CDATA[<p>Hello!</p>
<p>Recently I was working for a Irish guy who has opened a wordpress blog few months ago. I did the theme for him. Recently he requested me for modifying and/or upgrading the project. One of the project requirements was URL rewriting. For example, there can a URL as follows:<br />
<strong>http://www.sitename.com/index.php?group_name=My-Input-Value-Goes-Here</strong></p>
<p>But after rewrite, the URL should look like:<br />
<strong>http://www.sitename.com/My-Input-Value-Goes-Here</strong></p>
<p>Well. You see I am passing the variable value in <span style="text-decoration: underline;">index.php</span> file. But I needed to read the custom URL passed value through another PHP file and that is <span style="text-decoration: underline;">group.php</span>. My <span style="text-decoration: underline;">group.php</span> file was inside the theme folder. I am passing the <strong>group_name</strong> value in <span style="text-decoration: underline;">index.php</span> file but reading from <span style="text-decoration: underline;">group.php</span> file. It sounds a bit interesting. Huh?</p>
<p>OK. After browsing several blogs, I came up to writing a custom plugin. Thanks to Google.com and all those people sharing information.</p>
<p>My plugin made me a way so that I could pass a variable value in <span style="text-decoration: underline;">index.php</span> file but read it from <span style="text-decoration: underline;">group.php</span> file. This plugin code is available almost everywhere. Here goes my plugin:</p>
<pre class="php">
<span class="phpScriptTag"><span class="phpOperator">&lt;</span><span class="phpOperator">?</span>php</span>
	<span class="phpComment">/*
	Plugin Name<span class="phpOperator">:</span> WP Custom URL
	Plugin URI<span class="phpOperator">:</span><span class="htmlText"> http</span><span class="phpOperator">:</span><span class="phpComment">//www<span class="phpOperator">.</span>tanzilo.com/#
</span>	<span class="htmlText">Description</span><span class="phpOperator">:</span> A plugin to allow parameters to be passed in the URL and recognized by Wordpress
	Author<span class="phpOperator">:</span> Tanzilo
	Version<span class="phpOperator">:</span> <span class="phpNumber">1</span><span class="phpOperator">.</span><span class="phpNumber">0</span>
	<span class="htmlText">Author URI</span><span class="phpOperator">:</span><span class="htmlText"> http</span><span class="phpOperator">:</span><span class="phpComment">//www<span class="phpOperator">.</span>tanzilo.com/
</span>	*/</span>
	<span class="phpFunctionKeyword">function</span><span class="htmlText"> flush_rewrite_rules</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
	<span class="phpKeyword">	global </span>$wp_rewrite<span class="phpText">;</span>
		$wp_rewrite<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">flush_rules</span><span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
	<span class="phpOperator">}</span>
	<span class="phpFunctionKeyword">function</span><span class="htmlText"> add_rewrite_rules</span><span class="phpOperator">(</span> $wp_rewrite <span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
		$new_rules <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span>
	  		<span class="phpString">&#8216;<span class="phpOperator">(</span>.<span class="phpOperator">+</span><span class="phpOperator">)</span>&#8216;</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">&#8216;index<span class="phpOperator">.</span><span class="htmlText">php</span><span class="phpOperator">?</span>group_name=&#8217;</span> <span class="phpOperator">.</span>
			$wp_rewrite<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">preg_index</span><span class="phpOperator">(</span><span class="phpNumber">1</span><span class="phpOperator">)</span> <span class="phpOperator">)</span><span class="phpText">;</span>
		$wp_rewrite<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">rules </span><span class="phpOperator">=</span> $new_rules <span class="phpOperator">+</span> $wp_rewrite<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">rules</span><span class="phpText">;</span>
	<span class="phpOperator">}</span>
	<span class="phpFunctionKeyword">function</span><span class="htmlText"> add_query_vars</span><span class="phpOperator">(</span> $qvars <span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
		$qvars<span class="phpOperator">[</span><span class="phpOperator">]</span> <span class="phpOperator">=</span> <span class="phpString">&#8216;group_name&#8217;</span><span class="phpText">;</span>
	<span class="phpKeyword">	return </span>$qvars<span class="phpText">;</span>
	<span class="phpOperator">}</span>
	<span class="phpFunctionKeyword">function</span><span class="htmlText"> template_redirect_file</span><span class="phpOperator">(</span><span class="phpOperator">)</span>
	<span class="phpOperator">{</span>
	<span class="phpKeyword">	global </span>$wp_query<span class="phpText">;</span>
	<span class="phpKeyword">	if </span><span class="phpOperator">(</span> $wp_query<span class="phpOperator">-<span class="phpOperator">&gt;</span></span><span class="htmlText">get</span><span class="phpOperator">(</span><span class="phpString">&#8216;group_name&#8217;</span><span class="php