php过滤函数
1. php中如何去除一个数组中的空元素
array_filter() 函数用回调函数过滤数组中的值。
该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回结果数组中。数组键名保持不变。
例如:
<?php
function test_odd($var)
{
return($var & 1);
}
$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
?>
运行结果:Array ( [3] => 3 )
(1)php过滤函数扩展阅读:
循环遍历数组,把有值的元素放进一个新数组中。
$arr = array();
foreach ($urlArr as $key => $val) {
if (empty($val)) {continue;}
$arr[] = $val;
}
$arr是去除空元素的新数组。
2. php 常用的数组函数都有哪些 作用是什么有什么特点 怎么使用
php常用的数组函数的作用特点如下:
array_change_key_case -- 返回字符串键名全为小写或大写的数组
array_chunk -- 将一个数组分割成多个
array_combine -- 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
array_count_values -- 统计数组中所有的值出现的次数
array_diff_assoc -- 带索引检查计算数组的差集
array_diff_key -- 使用键名比较计算数组的差集
array_diff_uassoc -- 用用户提供的回调函数做索引检查来计算数组的差集
array_diff_ukey -- 用回调函数对键名比较计算数组的差集
array_diff -- 计算数组的差集
array_fill_keys -- 使用指定的键和值填充数组
array_fill -- 用给定的值填充数组
array_filter -- 用回调函数过滤数组中的单元
array_flip -- 交换数组中的键和值
array_intersect_assoc -- 带索引检查计算数组的交集
array_intersect_key -- 使用键名比较计算数组的交集
array_intersect_uassoc -- 带索引检查计算数组的交集,用回调函数比较索引
array_intersect_ukey -- 用回调函数比较键名来计算数组的交集
array_intersect -- 计算数组的交集
array_key_exists -- 检查给定的键名或索引是否存在于数组中
array_keys -- 返回数组中所有的键名
array_map -- 将回调函数作用到给定数组的单元上
array_merge_recursive -- 递归地合并一个或多个数组
array_merge -- 合并一个或多个数组
array_multisort -- 对多个数组或多维数组进行排序
array_pad -- 用值将数组填补到指定长度
array_pop -- 将数组最后一个单元弹出(出栈)
array_proct -- 计算数组中所有值的乘积
array_push -- 将一个或多个单元压入数组的末尾(入栈)
array_rand -- 从数组中随机取出一个或多个单元
array_rece -- 用回调函数迭代地将数组简化为单一的值
array_replace_recursive -- 使用传递的数组递归替换第一个数组的元素
array_replace -- 使用传递的数组替换第一个数组的元素
array_reverse -- 返回一个单元顺序相反的数组
array_search -- 在数组中搜索给定的值,如果成功则返回相应的键名
array_shift -- 将数组开头的单元移出数组
array_slice -- 从数组中取出一段
array_splice -- 把数组中的一部分去掉并用其它值取代
array_sum -- 计算数组中所有值的和
array_udiff_assoc -- 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc -- 带索引检查计算数组的差集,用回调函数比较数据和索引
array_udiff -- 用回调函数比较数据来计算数组的差集
array_uintersect_assoc -- 带索引检查计算数组的交集,用回调函数比较数据
array_uintersect_uassoc -- 带索引检查计算数组的交集,用回调函数比较数据和索引
array_uintersect -- 计算数组的交集,用回调函数比较数据
array_unique -- 移除数组中重复的值
array_unshift -- 在数组开头插入一个或多个单元
array_values -- 返回数组中所有的值
array_walk_recursive -- 对数组中的每个成员递归地应用用户函数
array_walk -- 对数组中的每个成员应用用户函数
array -- 新建一个数组
arsort -- 对数组进行逆向排序并保持索引关系
asort -- 对数组进行排序并保持索引关系
compact -- 建立一个数组,包括变量名和它们的值
count -- 计算数组中的单元数目或对象中的属性个数
current -- 返回数组中的当前单元
each -- 返回数组中当前的键/值对并将数组指针向前移动一步
end -- 将数组的内部指针指向最后一个单元
extract -- 从数组中将变量导入到当前的符号表
in_array -- 检查数组中是否存在某个值
key -- 从关联数组中取得键名
krsort -- 对数组按照键名逆向排序
ksort -- 对数组按照键名排序
list -- 把数组中的值赋给一些变量
natcasesort -- 用“自然排序”算法对数组进行不区分大小写字母的排序
natsort -- 用“自然排序”算法对数组排序
next -- 将数组中的内部指针向前移动一位
pos -- current 的别名
prev -- 将数组的内部指针倒回一位
range -- 建立一个包含指定范围单元的数组
reset -- 将数组的内部指针指向第一个单元
rsort -- 对数组逆向排序
shuffle -- 将数组打乱
sizeof -- count 的别名
sort -- 对数组排序
uasort -- 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
uksort -- 使用用户自定义的比较函数对数组中的键名进行排序
usort -- 使用用户自定义的比较函数对数组中的值进行排序
关于如何使用,那是要根据使用者需求来衡量,不能一言概括
使用语法如下:
<?php
$arr=array('Hello','World!');
$arr=implode(',',$arr);
echo$arr;
?>
结果是:HelloWorld!
如果你想更多的了解php的数组函数,我建议你详细地去看看php手册
php手册官网:http://www.php.net/manual/zh/index.php
3. php过滤指定字符的函数
explode — 使用一个字符串分割另一个字符串
array explode ( string $delimiter , string $string [, int $limit ] )
此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。
<?php
//示例1
$pizza="";
$pieces=explode("",$pizza);
echo$pieces[0];//piece1
echo$pieces[1];//piece2
//示例2
$data="foo:*:1023:1000::/home/foo:/bin/sh";
list($user,$pass,$uid,$gid,$gecos,$home,$shell)=explode(":",$data);
echo$user;//foo
echo$pass;//*
?>
4. ThinkPHP中I(),U(),$this->post()等函数用法
本文实例讲述了ThinkPHP中I(),U(),$this->post()等函数的用法。分享给大家供大家参考。具体方法如下:
在ThinkPHP中在控制器中接受表单的数据可以使用如下方法:
1、$_POST[]/$_GET[],但是这个接受的表单内容不会通过htmlspecialchars();函数进行过滤。如果想使用这个接收数据,需要手动处理表单数据
2、可以用接收表单函数复制代码
代码如下:$this->_post();$this->_get();,这个函数默认就会使用htmlspecialchars()进行过滤,不用手动过滤。
3、在thinkphp3.1.3中有一个新的函数I();直接接收表单数据,并默认为htmlspecailchars();过滤这个函数有这些字段
I('需要接收的表单名','如果数据为空默认值','使用的函数处理表单数据');
U();函数是输出地址
U('操作名','array()参数','伪静态后缀名',是否跳转,域名)
希望本文所述对大家的ThinkPHP框架程序设计有所帮助。
5. 用自己的语言说出php中数组的常用函数和用法
array_filter : 过滤数组中的无效元素,可以使用回调函数过滤
array_map : 使用回调函数依次处理所有元素
implode: 将一维数组转为特定符号隔开的字符串,
explode: 将特定符号隔开的字符串转为一维数组
sort /ksort: 将数组进行升序排序
array_unique: 将数组元素去重
array_values: 取数组的值,重新组成新数组
array_pop: 取数组末尾元素并删除(队列)
array_push:将一个元素插入数组末尾(队列)
array_sum:统计数组元素的和
array_column:将二维数组中的指定KEY取出组成一个一维数组
网页链接
6. 请教php高手,关于substr()函数的使用
substr只提供字符提取功能,没有提供字符过滤功能
如果你要过滤数字的话,可以用str_replace函数
如果你要过滤数字就这么写
$number = array("0","1","2","3","4","5","渣缓6","7","8","备坦9");
str_replace($number,"",substr(md5(time()),0,5))
这样,就是提当前时间的md5前5个字符,如果存在数字则将其替换成空字符串仿梁桐 比如2ef3c将变成 efc
字幕方法类似!
如果判断mysql有重复记录得看你数据库结构和你这个重复的标准是什么,没具体例子,不好说明