这篇文章介绍的是php 中的数组处理函数 in_array()和array_key_exists () ,之所以介绍这二个函数,是因为他在我做项目时对我的帮助很大,
举个简单的例子,比如我在添加一个订单,失败后转到另一个页面,并传个错误号,这时我可以把所以错误号定义成数组的 key,把错误信息定义成value,这样我可以array_key_exists函数来检查传来的错误号是否已经定义了,定义了把错误信息返回给浏览者,没定义,返回给他未知错误。
in_array
in_array()是用来检查数组中是否存在某个值(注:检查的是数组的值)
语法:bool in_array ( mixed needle, array haystack [, bool strict] )
在 haystack 中搜索 needle,如果找到则返回 TRUE,否则返回 FALSE。
如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。
注: 如果 needle 是字符串,则比较是区分大小写的。
注: 在 PHP 版本 4.2.0 之前,needle 不允许是一个数组。
例:
以下为引用的内容: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>in_array()函数</title> </head>
<body> <?php $arr = array("apple","pear","banana","orange"); $value = "pear"; if (in_array($value,$arr)){ echo "$value 在数组里"; } else{ echo ":("; } ?> </body> </html>
|
array_key_exists和in_array相似,不同的是他不是用来检查值的,而是用来检查键名或索引值的。
语法:bool array_key_exists ( mixed key, array search )
array_key_exists() 在给定的 key 存在于数组中时返回 TRUE。key 可以是任何能作为数组索引的值。array_key_exists() 也可用于对象。
例:
以下为引用的内容: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>array_key_exists()函数</title> </head>
<body>
<?php $arr = array("001"=>"张三","002"=>"李四","003"=>"王五","9527"=>"周星星"); $key = "9527"; if (array_key_exists($key,$arr)){ echo "我的名子叫".$arr[$key]; } else{ echo "找不到你的名子"; } ?> </body> </html>
|