<?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>中文 &#187; Angrybird</title>
	<atom:link href="http://software.intel.com/zh-cn/blogs/author/angrybird/feed/" rel="self" type="application/rss+xml" />
	<link>http://software.intel.com/zh-cn/blogs</link>
	<description></description>
	<lastBuildDate>Mon, 28 May 2012 13:40:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>PHP检查数组中是否存在某个键（key）</title>
		<link>http://software.intel.com/zh-cn/blogs/2011/11/11/phpkey/</link>
		<comments>http://software.intel.com/zh-cn/blogs/2011/11/11/phpkey/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 03:06:29 +0000</pubDate>
		<dc:creator>Angrybird</dc:creator>
				<category><![CDATA[其他]]></category>
		<category><![CDATA[英特尔® 软件网络 2.0]]></category>
		<category><![CDATA[软件技术学习及认证]]></category>
		<category><![CDATA[key]]></category>
		<category><![CDATA[PHP数组]]></category>
		<category><![CDATA[键]]></category>

		<guid isPermaLink="false">http://software.intel.com/zh-cn/blogs/2011/11/11/phpkey/</guid>
		<description><![CDATA[问题 如何才能知道数组中是否包含某个特定的键 方案 使用array_key_exists()来检查数组元素的键（该函数不会返回元素的值） if(array_key_exists('key', $array)){ echo "该数组中包含了'key'"; } 使用isset()来检查是否存在一个值不为null的键 if(isset($array['key'])){ echo "key键存在于该数组中"; } 作者：Angrybird 来源：重庆 http://www.php-chongqing.com 原文地址：http://www.php-chongqing.com/index.php/article/81 重庆PHP原创，转载请注明版权信息]]></description>
			<content:encoded><![CDATA[<p><strong>问题</strong><br />
如何才能知道数组中是否包含某个特定的键</p>
<p><strong>方案</strong><br />
使用array_key_exists()来检查数组元素的键（该函数不会返回元素的值）<br />
<code>if(array_key_exists('key', $array)){<br />
    echo "该数组中包含了'key'";<br />
}</code></p>
<p>使用isset()来检查是否存在一个值不为null的键<br />
<code>if(isset($array['key'])){<br />
    echo "key键存在于该数组中";<br />
}</code></p>
<p>作者：Angrybird<br />
来源：重庆 <a href="http://www.php-chongqing.com" class="broken_link">http://www.php-chongqing.com</a><br />
原文地址：<a href="http://www.php-chongqing.com/index.php/article/81" class="broken_link">http://www.php-chongqing.com/index.php/article/81</a> 重庆PHP原创，转载请注明版权信息</p>
]]></content:encoded>
			<wfw:commentRss>http://software.intel.com/zh-cn/blogs/2011/11/11/phpkey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP检查数组中是否包含某个元素(value)</title>
		<link>http://software.intel.com/zh-cn/blogs/2011/11/09/phpvalue/</link>
		<comments>http://software.intel.com/zh-cn/blogs/2011/11/09/phpvalue/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 06:38:48 +0000</pubDate>
		<dc:creator>Angrybird</dc:creator>
				<category><![CDATA[其他]]></category>

		<guid isPermaLink="false">http://software.intel.com/zh-cn/blogs/2011/11/09/phpvalue/</guid>
		<description><![CDATA[问题 如何才能知道PHP数组中是否包含某个特定的值？ 方法 使用in_array() if(in_array($value, $array)){ echo "该数组中含有一个值为$value的元素"; } 作者：Angrybird 来源：重庆PHP http://www.php-chongqing.com 原文地址：http://www.php-chongqing.com/index.php/article/84 重庆PHP原创，转载请注明版权信息]]></description>
			<content:encoded><![CDATA[<p><strong>问题</strong><br />
如何才能知道PHP数组中是否包含某个特定的值？</p>
<p><strong>方法</strong><br />
使用in_array()</p>
<p>if(in_array($value, $array)){<br />
    echo "该数组中含有一个值为$value的元素";<br />
}</p>
<p>作者：Angrybird<br />
来源：重庆PHP <a href="http://www.php-chongqing.com" class="broken_link">http://www.php-chongqing.com</a><br />
原文地址：<a href="http://www.php-chongqing.com/index.php/article/84" class="broken_link">http://www.php-chongqing.com/index.php/article/84</a> 重庆PHP原创，转载请注明版权信息</p>
]]></content:encoded>
			<wfw:commentRss>http://software.intel.com/zh-cn/blogs/2011/11/09/phpvalue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP计算指数（幂）</title>
		<link>http://software.intel.com/zh-cn/blogs/2011/11/04/php-4/</link>
		<comments>http://software.intel.com/zh-cn/blogs/2011/11/04/php-4/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 08:02:45 +0000</pubDate>
		<dc:creator>Angrybird</dc:creator>
				<category><![CDATA[其他]]></category>

		<guid isPermaLink="false">http://software.intel.com/zh-cn/blogs/2011/11/04/php-4/</guid>
		<description><![CDATA[问题 如何用PHP计算一个数的幂？ 方法 1.计算某个数的e次幂，使用exp() $exp = exp(2); // 计算2的e次幂 2.计算任意数的任意次幂,使用pow() $exp = pow(2, 10); // 2的十次幂 $exp = pow(x, y); // x的y次幂 作者：Anggrybird 来源：重庆PHP http://www.php-chongqing.com 原文地址：http://www.php-chongqing.com/index.php/article/77 重庆PHP原创，转载请注明版权信息]]></description>
			<content:encoded><![CDATA[<p>问题<br />
如何用PHP计算一个数的幂？</p>
<p>方法<br />
1.计算某个数的e次幂，使用exp()<br />
$exp = exp(2); // 计算2的e次幂<br />
2.计算任意数的任意次幂,使用pow()<br />
$exp = pow(2, 10); // 2的十次幂<br />
$exp = pow(x, y);  // x的y次幂<br />
作者：Anggrybird<br />
来源：重庆PHP <a href="http://www.php-chongqing.com" class="broken_link">http://www.php-chongqing.com</a><br />
原文地址：<a href="http://www.php-chongqing.com/index.php/article/77" class="broken_link">http://www.php-chongqing.com/index.php/article/77</a> 重庆PHP原创，转载请注明版权信息</p>
]]></content:encoded>
			<wfw:commentRss>http://software.intel.com/zh-cn/blogs/2011/11/04/php-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP数组可以用中文索引吗？（数组索引详解）</title>
		<link>http://software.intel.com/zh-cn/blogs/2011/11/04/php-3/</link>
		<comments>http://software.intel.com/zh-cn/blogs/2011/11/04/php-3/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 08:01:43 +0000</pubDate>
		<dc:creator>Angrybird</dc:creator>
				<category><![CDATA[其他]]></category>

		<guid isPermaLink="false">http://software.intel.com/zh-cn/blogs/2011/11/04/php-3/</guid>
		<description><![CDATA[我们知道PHP数组的索引有这么几种情况 1.默认索引： 即数字索引，这是PHP数组的默认索引形式，默认的数字索引从零开始， 当然数字索引除了默认以外，还可以直接指定，例如： $arr = array( 4 =&#62; '我是指定的整型的四', '4' =&#62; '我是指定的字符型的四' ); echo "{$arr[4]}"; echo "{$arr['4']}"; 咦？还可以这样整吗？当然可以，不过两个输出的结果是一样的。为什么？ 因为PHP是一门弱类型的语言，尤其是在数字的应用上，经常是整型数字和字符型的数字相互转换的，当然这种转换一般是PHP自动进行的。就像上面的例子一样。你可能要问，为什么两个打印出的都是第二个元素值呢？ 注意：PHP重复用相同名称命名变量会造成覆盖，例如： $a = 3; $a = 5; echo $a; 这个时候得到的结果是五，这里的数组索引也会造成相同的效果。我们再来看下面的例子： $arr = array('a' =&#62; 'a'); $arr = array('ab' =&#62; 'ab'); print_r($arr); 你会发现执行的结果是这样的 Array ( [ab] =&#62; ab )，为什么呢？ 因为我们定义一个数组，实际上是将后面的数组赋给前面的变量，也就是说前面的变量是一个标识符。这个标识符用来指向数组在内存当中的实际地址，所以说当我们再次用相同的变量名标识一个数组时，这个变量就指向了新定义的这个数组在内存中的实际地址了。所以上面的情况发生了。我们在向数组追加元素或修改数组的时候一定不要像上面这样来使用。你可以这样 $arr[] = 'f'; $arr[] = 'x'; [...]]]></description>
			<content:encoded><![CDATA[<p>我们知道PHP数组的索引有这么几种情况<br />
1.默认索引：<br />
即数字索引，这是PHP数组的默认索引形式，默认的数字索引从零开始，<br />
当然数字索引除了默认以外，还可以直接指定，例如：<br />
$arr = array(<br />
	4   =&gt; '我是指定的整型的四',<br />
	'4' =&gt; '我是指定的字符型的四'<br />
);<br />
echo "{$arr[4]}<br />";<br />
echo "{$arr['4']}<br />";<br />
咦？还可以这样整吗？当然可以，不过两个输出的结果是一样的。为什么？<br />
因为PHP是一门弱类型的语言，尤其是在数字的应用上，经常是整型数字和字符型的数字相互转换的，当然这种转换一般是PHP自动进行的。就像上面的例子一样。你可能要问，为什么两个打印出的都是第二个元素值呢？<br />
注意：PHP重复用相同名称命名变量会造成覆盖，例如：<br />
$a = 3;<br />
$a = 5;<br />
echo $a;<br />
这个时候得到的结果是五，这里的数组索引也会造成相同的效果。我们再来看下面的例子：<br />
$arr = array('a' =&gt; 'a');<br />
$arr = array('ab' =&gt; 'ab');<br />
print_r($arr);<br />
你会发现执行的结果是这样的 Array ( [ab] =&gt; ab )，为什么呢？<br />
因为我们定义一个数组，实际上是将后面的数组赋给前面的变量，也就是说前面的变量是一个标识符。这个标识符用来指向数组在内存当中的实际地址，所以说当我们再次用相同的变量名标识一个数组时，这个变量就指向了新定义的这个数组在内存中的实际地址了。所以上面的情况发生了。我们在向数组追加元素或修改数组的时候一定不要像上面这样来使用。你可以这样<br />
$arr[] = 'f';<br />
$arr[] = 'x';<br />
$arr['c'] = '1234';<br />
当然，还有 array_push() 什么的，不过调用函数的执行效率不如前者。<br />
下面，让我们来揭开PHP数组能不能使用中文作为索引的问题----<br />
$as = array(<br />
	'我'    =&gt; '非著名不专业操蛋扯蛋拽蛋玩蛋滚蛋煮蛋炒蛋煎蛋下蛋之《PHP淫牌讲师》<br />',<br />
	'..'    =&gt; '你<br />',<br />
	',,'    =&gt; '绝<br />',<br />
	'``'	=&gt; '对<br />',<br />
	'??'	=&gt; '木<br />',<br />
	'!!'	=&gt; '有<br />',<br />
	'=='	=&gt; '见<br />',<br />
	'--'	=&gt; '过<br />',<br />
	'++'	=&gt; '如<br />',<br />
	'**'	=&gt; '此<br />',<br />
	'//'	=&gt; '操<br />',<br />
	'##'	=&gt; '蛋<br />',<br />
	'$$'	=&gt; '的<br />',<br />
	'@@'	=&gt; 'PHP<br />',<br />
	'&amp;&amp;'	=&gt; '数<br />',<br />
	'^^'	=&gt; '组<br />',<br />
	'%%'	=&gt; '！！！<br />'<br />
);<br />
print_r($as);<br />
你的眼睛没有看花，我的确就是这么写的。<br />
恩，我讲课的风格也基本上就是这样。<br />
当然，你可以觉得我很无聊很操蛋，不过，我的学生倒是蛮喜欢我的......<br />
唉，人太拉轰也是一种罪过啊，男毋屙米豆腐......<br />
执行一下上面的代码，你就知道了。<br />
作者：Angrybird<br />
来源：重庆PHP <a href="http://www.php-chongqing.com" class="broken_link">http://www.php-chongqing.com</a><br />
原文地址：<a href="http://www.php-chongqing.com/index.php/article/3" class="broken_link">http://www.php-chongqing.com/index.php/article/3</a></p>
]]></content:encoded>
			<wfw:commentRss>http://software.intel.com/zh-cn/blogs/2011/11/04/php-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP句法规则详解</title>
		<link>http://software.intel.com/zh-cn/blogs/2011/10/31/php-2/</link>
		<comments>http://software.intel.com/zh-cn/blogs/2011/10/31/php-2/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 07:20:51 +0000</pubDate>
		<dc:creator>Angrybird</dc:creator>
				<category><![CDATA[其他]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP句法]]></category>
		<category><![CDATA[PHP语法]]></category>
		<category><![CDATA[重庆PHP]]></category>

		<guid isPermaLink="false">http://software.intel.com/zh-cn/blogs/2011/10/31/php-2/</guid>
		<description><![CDATA[1.简单句法规则（用花括号界定变量名，适用于PHP所有版本）： $a = 'flower'; echo "She received some $as"; // 无效；字母s会被当成有效的变量名组成元素，但是这里的变量是$a echo "She received some ${a}s"; // 有效 echo "She received some {$a}s"; // 有效；推荐的使用方法 我们希望表达的是”她收到一些花“，语境中的flower应该采用复数形式（也就是说应该在后面加上S），但是如果不对变量做任何界定的话，就会出现第一个echo的情况。显然我们希望输出的是$a而不是$as。那么我们通常是怎么来处理这个输出的呢？ echo "She received some $a"."s"; echo "She received some ".$a."s"; // 这两种习惯性的写法应该没有加花括号的写法简洁明了吧？ 注意：不管{是出现在$前面还是后面，只有两者紧挨着时花括号才会被当成是界定符号。不要在之间加空格，要不然就会被当作普通的花括号处理 echo "She received some { $a}s"; // 输出的结果为：She received some { flower}s 2.复杂句法规则（用花括号界定表达式等，使用与PHP4+）： echo "有效的写法： {$arr[4][3]}"; [...]]]></description>
			<content:encoded><![CDATA[<p>1.简单句法规则（用花括号界定变量名，适用于PHP所有版本）：<br />
$a = 'flower';<br />
echo "She received some $as";<br />
// 无效；字母s会被当成有效的变量名组成元素，但是这里的变量是$a<br />
echo "She received some ${a}s"; // 有效<br />
echo "She received some {$a}s"; // 有效；推荐的使用方法<br />
我们希望表达的是”她收到一些花“，语境中的flower应该采用复数形式（也就是说应该在后面加上S），但是如果不对变量做任何界定的话，就会出现第一个echo的情况。显然我们希望输出的是$a而不是$as。那么我们通常是怎么来处理这个输出的呢？<br />
echo "She received some $a"."s";<br />
echo "She received some ".$a."s";<br />
// 这两种习惯性的写法应该没有加花括号的写法简洁明了吧？<br />
注意：不管{是出现在$前面还是后面，只有两者紧挨着时花括号才会被当成是界定符号。不要在之间加空格，要不然就会被当作普通的花括号处理<br />
echo "She received some { $a}s";<br />
// 输出的结果为：She received some { flower}s</p>
<p>2.复杂句法规则（用花括号界定表达式等，使用与PHP4+）：<br />
echo "有效的写法： {$arr[4][3]}";<br />
// 有效；界定多维数组<br />
echo "有效的写法： {$arr['foo'][3]}";<br />
// 有效；当在字符串中使用多维数组时，一定要用括号将它括起来<br />
echo "有效的写法： {$this-&gt;width}00";<br />
// 有效；如果不界定的话，就会变成 $this-&gt;width00<br />
echo "有效的写法： {$this-&gt;value[3]-&gt;name}";<br />
// 有效；该例演示了界定链式调用<br />
echo "有效的写法： $name: {${$name}}";<br />
// 有效；该例演示的效果实际上是一个可变变量<br />
echo "有效的写法: {${getName()}}";<br />
// 有效；该例演示了将函数的返回值作为变量名<br />
echo "有效的下发： {${$this-&gt;getName()}}";<br />
// 有效；该例演示了将函数的返回值作为变量名<br />
注意1：echo "这样写有效吗： {getName()}";输出结果为：'这样写有效吗：<br />
{getName()}'。因为里面不含$，所以花括号不会被当作界定符<br />
注意2：echo "这样写有效吗：{$arr[foo][3]}"; 在回答这个问题前我们先来进行一个实验：<br />
error_reporting(E_ALL);<br />
$arr = array('a', 'b', 'c', 'd'=&gt;'e');<br />
echo "This is $arr[d]";<br />
// 我们发现这样写是没有问题的，那么我们像下面这样写呢？<br />
echo $arr[d];<br />
产生了这样的错误：<br />
Notice: Use of undefined constant d - assumed 'd'<br />
注意：采用了未定义的常量d，可能应该为'd'<br />
那么如果我们像下面这样修改一下代码的话<br />
error_reporting(E_ALL);<br />
$arr = array('a', 'b', 'c', 'd'=&gt;'e');<br />
define('f', 'd');<br />
echo $arr[f];<br />
我们发现这次没有问题了。可以看出在字符串中数组的索引不加单引号是没有问题的，但是如果这种写法不是出现在字符串当中就会报错，而对于字符串中{$arr[foo][3]}的解析就是按照非字符串的方式解析的。所以说在字符串当中对数组只加花括号界定而不对索引加单引号的写法是错误的。因为程序会把不加单引号的索引当作是常量来进行解析，这就产生了错误。正确的写法应该是：<br />
echo "有效的写法： {$arr['foo'][3]}";<br />
特别提醒一点：echo "This is $arr[d]";这种写法虽然能够被程序解析，但这也仅限于数组是一维数组的情况。严谨的写法应该是：echo "This is {$arr['d']}";我的学生曾经在这一点上和我争论过，他说：既然前面一种写法能出结果，为什么一定要用后面一种写法呢？那么，我们再继续修改一下前面的代码<br />
error_reporting(E_ALL);<br />
$arr = array('a', 'b', 'c',<br />
	'd'=&gt;array('e'=&gt;'f')<br />
);<br />
echo "This is $arr[d][e]";<br />
这样还能够被正确解析吗？我只想告诉你，加花括号是严谨的必要的。当然，如果你不是我的学生那么我管不了那么多......</p>
<p>注意3：<br />
error_reporting(E_ALL);<br />
$arr = array('a', 'b', 'c', 'd');<br />
echo "This is {$arr[2]} <br />";<br />
echo "This is {$arr['2']} <br />";<br />
执行上面的代码。结果是一样的，为什么会这样呢？我只能告诉你PHP是弱类型语言，至于什么叫弱类型语言我就不在这里多说了。自己去Google一下吧。说了这么多，那么最能体现这些句法规则优势的具体应用在什么地方呢？----SQL语句<br />
// 示例一：<br />
$SQL1 = "select * from table where id={$_GET['id']}";<br />
// 示例二：<br />
$SQL2 = "select * from table where id={$this-&gt;id}";<br />
作者：重庆PHP<br />
来源：重庆PHP <a href="http://www.php-chongqing.com" class="broken_link">http://ww.php-chongqing.com</a><br />
原文地址：<a href="http://www.php-chongqing.com/index.php/article/1" class="broken_link">http://www.php-chongqing.com/index.php/article/1</a> 重庆PHP原创，转载请注明版权信息</p>
]]></content:encoded>
			<wfw:commentRss>http://software.intel.com/zh-cn/blogs/2011/10/31/php-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

