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

<channel>
	<title>Php LifeStyle :My Php and My LifeStyle &#187; php user agent detect</title>
	<atom:link href="http://www.phplifestyle.com/tag/php-user-agent-detect/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.phplifestyle.com</link>
	<description>PHP Security and Optimization</description>
	<lastBuildDate>Wed, 08 Feb 2012 19:00:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Google Chrome กับ Rich Text Editor มันมีปัญหา !</title>
		<link>http://www.phplifestyle.com/45/google-chrome-%e0%b8%81%e0%b8%b1%e0%b8%9a-rich-text-editor-%e0%b8%a1%e0%b8%b1%e0%b8%99%e0%b8%a1%e0%b8%b5%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2/</link>
		<comments>http://www.phplifestyle.com/45/google-chrome-%e0%b8%81%e0%b8%b1%e0%b8%9a-rich-text-editor-%e0%b8%a1%e0%b8%b1%e0%b8%99%e0%b8%a1%e0%b8%b5%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 19:10:50 +0000</pubDate>
		<dc:creator>tumaji</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[google chrome]]></category>
		<category><![CDATA[php user agent detect]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[rich text editor]]></category>

		<guid isPermaLink="false">http://www.phplifestyle.com/?p=45</guid>
		<description><![CDATA[����������� หลังจากเป็นที่ฮือหากับการเปิดตัวของ browser เจ้าใหม่แต่ชื่อไม่ใหม่อย่าง Google Chrome ของค่ายยักษ์ใหญ่อย่าง Google ที่ทำอะไรก็รุ่งไปหมด ทำให้ตลาดของ browser ตื่นตัวขึ้นอีกครั้งซึ่งเรื่องนั้นเราไม่พูดถึงเราจะมาพูดถึงเรื่องที่เราถนัดดีกว่านั้นก็คือเรื่องของการเขียนโปรแกรม
����������� การเปิดตัวของ Google Chrome ทำให้วงการ Software ต้องมีการปรับปรุงไม่มากก็น้อยซึ่งที่เห็นได้ชัดก็คือการปรับให้ Software สามารถรันบน Google Chrome ได้ ซึ่งปัญหาที่เห็นได้ชัดที่สุดก็คือบรรดา Rich Text Editor ทั้งหลายต่างเอ๋อไปตามๆกันเมื่อรันผ่าน Google Chrome เพราะไม่รู้จักว่ามันเป็นใครก็ที่ไม่รู้จักก็เพราะว่าตัว USER_AGENT ของ Google Chrome ทะลึ่งมีหน้าตาแปลกๆ�
�Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.29 Safari/525.13
 
�แล้วอย่างนี้ที่เขียนกันเอาไว้ก็ไม่รู้ว่าจะเข้าเงื่อนไขไหนเพราะมันมีทั้ง Mozilla , Gecko , Chrome , Safari [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-205" title="agent" src="http://www.phplifestyle.com/wp-content/uploads/2008/09/agent.jpg" alt="agent" width="782" height="73" />����������� หลังจากเป็นที่ฮือหากับการเปิดตัวของ browser เจ้าใหม่แต่ชื่อไม่ใหม่อย่าง Google Chrome ของค่ายยักษ์ใหญ่อย่าง Google ที่ทำอะไรก็รุ่งไปหมด ทำให้ตลาดของ browser ตื่นตัวขึ้นอีกครั้งซึ่งเรื่องนั้นเราไม่พูดถึงเราจะมาพูดถึงเรื่องที่เราถนัดดีกว่านั้นก็คือเรื่องของการเขียนโปรแกรม</p>
<p>����������� การเปิดตัวของ Google Chrome ทำให้วงการ Software ต้องมีการปรับปรุงไม่มากก็น้อยซึ่งที่เห็นได้ชัดก็คือการปรับให้ Software สามารถรันบน Google Chrome ได้ ซึ่งปัญหาที่เห็นได้ชัดที่สุดก็คือบรรดา Rich Text Editor ทั้งหลายต่างเอ๋อไปตามๆกันเมื่อรันผ่าน Google Chrome เพราะไม่รู้จักว่ามันเป็นใครก็ที่ไม่รู้จักก็เพราะว่าตัว USER_AGENT ของ Google Chrome ทะลึ่งมีหน้าตาแปลกๆ�</p>
<p>�<code>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.29 Safari/525.13</code></p>
<p> </p>
<p>�แล้วอย่างนี้ที่เขียนกันเอาไว้ก็ไม่รู้ว่าจะเข้าเงื่อนไขไหนเพราะมันมีทั้ง Mozilla , Gecko , Chrome , Safari งงเลย</p>
<p>����������� ล่าสุดในวันที่ผมนั่งเขียน (12 กย. 51) Rich Text Editor เจ้าใหญ่ๆพากันปรับให้สามารถใช้งานบน Google Chrome แล้วอย่าง Spaw, TinyMCE ( Open Source หลายตัวใช้อยู่เช่น Moodle, Wordpress) จริงๆแล้ว Rich Text Editor เหล่านี้จะใช้ JavaScript ในการ detect browser ซึ่งถ้าอธิบายก็คงต้องไปนั่งไล่ JavaScript อีกยาว เอาเป็นว่าเอาตัวอย่างที่เป็น PHP ไปลองเล่นกันก็แล้วกัน</p>
<pre class="php">function userAgent($minor=false){
	$agents = array('MSIE'=&gt;'/MSIE ([0-9]\.[0-9])/', 'Firefox'=&gt;'/Firefox\/([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*)/', 'Opera'=&gt;'/Opera\/([0-9]*\.[0-9])/','Safari'=&gt;'/Version\/([0-9]*\.[0-9]*\.?[0-9]*)/','Chrome'=&gt;'/Chrome\/([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*)/');
	foreach($agents as $agent=&gt;$pattern){
		preg_match($pattern,$_SERVER['HTTP_USER_AGENT'],$match);
		if(isset($match[1])){
			if($minor){
				return $agent.' '.$match[1];
			}
			else
			{
				return $agent.' '.floor($match[1]);
			}
		}
	}
	return 'Unknown browser';
}
echo userAgent(true) ;</pre>
<p>ทดสอบ: <a title="demo useragent" href="http://www.phplifestyle.com/demo/browser.php" target="_blank">demo</a></p>
<p>�</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-204" title="chrome" src="http://www.phplifestyle.com/wp-content/uploads/2008/09/chrome.jpg" alt="chrome" width="339" height="242" /><a href="http://phplifestyle.com/wp-content/uploads/2008/09/chrome.jpg"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.phplifestyle.com/45/google-chrome-%e0%b8%81%e0%b8%b1%e0%b8%9a-rich-text-editor-%e0%b8%a1%e0%b8%b1%e0%b8%99%e0%b8%a1%e0%b8%b5%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

