存档

文章标签 ‘数组’

PHP数组函数in_array与array_diff

2010年7月27日 admin 2 条评论

in_array — 检查数组中是否存在某个值
例子:

1
2
3
4
5
6
7
8
9
<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Got Irix";
}
if (in_array("mac", $os)) {
    echo "Got mac";
}
?>

array_diff() 返回一个数组,该数组包括了所有在 array1 中但是不在任何其它参数数组中的值。注意键名保留不变。
例子:

1
2
3
4
5
6
7
<?php
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);
 
print_r($result);
?>

用处
判断变量是否在数组中( in_array )
对不在其一数组中的键值进行操作:
例:

1
2
3
4
5
6
7
8
$subArr=array('0'=>'isTitle','1'=>'isUrl','2'=>'isIntro','3'=>'isAuthor','4'=>'isPub_Date','5'=>'isPub_Time', );
$notSelect = array_diff($subArr,$data); //取数组交集,判断没有选中的对象
foreach($notSelect AS $key=>$val)
    {
      $queryNo[]=$val.'=0';
	}
$queryNo=implode(',',$queryNo);
$queryNo= " UPDATE ......   ";
分类: PHP 标签: , , ,

数组&&字符串 相互转换函数(PHPCMS)

2010年5月15日 admin 没有评论

将数组类型直接插入MYSQL时插入不进为ARRAY
插入数据前把你的数组序列化:
serialize($list);
读出的时候再使用
unserialize($list);

PHPCMS直接将数组存入数据库的函数。
数组转化为字符串: array2string

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function array2string($string, $isformdata = 1)
{
	if($string == '') return '';
	if($isformdata) $string = new_stripslashes($string);
	return addslashes(var_export($string, TRUE));
}
 
 
function new_stripslashes($string)
{
	if(!is_array($string)) return stripslashes($string);
	foreach($string as $key => $val) $string[$key] = new_stripslashes($val);
	return $string;
}

stripslashes 函数:
Returns a string with backslashes stripped off. (\’ becomes ‘ and so on.) Double backslashes (\\) are made into a single backslash (\).
该函数用于清理从数据库或 HTML 表单中取回的数据。
删除由 addslashes() 函数添加的反斜杠。

字符串转化为数组:输出。

1
2
3
4
5
6
function string2array($data)
{
	if($data == '') return array();
	eval("\$array = $data;");
	return $array;
}

eval
将值代入字符串之中。

语法: void eval(string code_str);
传回值: 无
函式种类: 数据处理

内容说明:
本函式可将字符串之中的变量值代入,通常用在处理数据库的数据上。参数 code_str 为欲处理的字符串。值得注意

的是待处理的字符串要符合 PHP 的字符串格式,同时在结尾处要有分号。使用本函式处理后的字符串会沿续到 PHP

程序结束。

分类: PHP 标签: , , ,

PHP合并拆分数组

2010年2月27日 admin 没有评论

合并数组有三个函数:
1.array_combine()

携带两个参数数组,参数数组一的值作新数组的键,参数数组二的值作新数组的值。很简单。

例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
< ?php 
$a = array('green', 'red', 'yellow'); 
$b = array('avocado', 'apple', 'banana'); 
$c = array_combine($a, $b); 
 
print_r($c); 
?> 
< ?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);
 
print_r($c);
?>

上例将输出:

1
2
3
4
5
6
7
8
9
10
11
12
Array 
( 
[green] => avocado 
[red] => apple 
[yellow] => banana 
) 
Array
(
[green] => avocado
[red] => apple
[yellow] => banana
)

阅读全文…

分类: PHP 标签: , , ,