1.html_entity_decode();htmlentities()[防止xss攻击];htmlspecialchars() [防止xss攻击]
把 HTML 实体转换成字符;将字符转换成HTML实体;TP的I函数默认使用的过滤方法,把'>' '<' 单引号 双引号 '&' 转化成html实体,例如
& (和号)成为 &
" (双引号)成为 "
' (单引号)成为 '
< (小于)成为 <
也可以用于防止sql注入
> (大于)成为 >
1.1.addslashes()
在预定义字符单引号、双引号、反斜杠之前加反斜杠,那么数据库语句就会忽略这些预定义字符
2.判断目标路径是否存在,不存在则创建;
$path= "./Public/yl.com/uploadpic/zip";
if (!file_exists($path)) {
dirname($path);
mkdir($path,0777);
}
3.uniqid();
基于以微秒计的当前时间,生成一个唯一的 ID.
4. $_SERVER['HTTP_HOST'] ;
获取当前服务器的主机地址
5.ksort()/krsort();
对关联数组按照键名进行升序/降序排序
$age=array("a"=>"60","A"=>"56","BZZZZZ"=>"31");
Ksort($age);
foreach ($age as $x=>$x_value) {
echo "Key=" . $x . ", Value=" . $x_value;
echo "
";
}
5.1.asort()/arsort()
对关联数组按照键值进行升序/降序排序
6.unset();
删除指定变量,比如数组中的一个元素。
7.if() { continue;}
continue语句用于循环语句中,作用是不执行循环体剩余部分,直接进行下次循环。
int
main()
{
int
i;
for
(i = 0; i < 10; i ++)
{
if
(i%2==0)
continue
;
//如果i为偶数 调用continue,
不执行循环体剩余部分,直接进行下次循环 ;
printf
(
"%d,"
, i);
//输出i值
}
}
7.时间、时间戳
显示时间戳
time();
时间戳转换成20170308151825
date('YmdHis');
时间戳转换成2017-03-08 15:18:25
date('Y-m-d H:i:s');
时间转换成时间戳
strtotime( date('YmdHis', time()) );
指定时间转换成时间戳
strtotime('2016-11-15 12:12:12')
8.file_put_contents("test.txt", var_export('1111', TRUE))
在PATH路径下往xxx.txt文件写入$data,例如异步获取通知无法var_dump接受到的数据时可以使用。
9.substr(“HELLO WORLD”, 6, 5)
截取字符串,6是起始位置,5是截取的长度
10.implode()
把数组元素组合为字符串:
$arr = array('Hello','World!','I','love','Shanghai!');
echo implode(" ",$arr);
?>
11.explode()
把字符串打散为数组:
$str = "Hello world. I love Shanghai!";
print_r (explode(" ",$str));
?>
12.str_replace() (可以替代正则匹配替换编辑器内容的url的方法)
把 $value['posttime']中的$a替换成$b
foreach($list as &$v)
{
$v['posttime'] = str_ireplace($a, $b, $v['posttime']);
}
13.strpos (例如可以获取一串url的主域名(查找.com第一次出现的位置然后替换后面的内容))
查找字符串在另一个字符串中第一次出现的位置
strpos("You love php, I love php too!","php");
14.in_array()
查找某变量是否在数组中
$people = array("Bill", "Steve", "Mark", "David");
if (in_array("Mark", $people)
)
15.foreach()
foreach ($arr as &$v)
{
$v = "你想要的值";
}
通过引用的方式使foreach代码更加简洁。
16.dirname(__FILE__)
查看文件当前路径
17.array_slice()
从数组array里面取出从位置3开始的3个元素
array_slice($array, 2, 3);
18.ceil($a)
返回大于等于$a的最小整数
19.array_push()
$a=array("red","green");array_push($a,"blue","yellow")
;
print_r($a);
?>
20.isset() empty()
前者只要不是null都为true,后者只要是0 null 空数组 空字符串等都为true,一般情况下还是不用这俩函数以免出错。
21.array_values()
把关联数组转换成索引数组,因为js不支持关联数组,会把关联数组转换成对象,所以可以用这个函数给前端传递数组
22.json_encode() ;json_decode($a, true)
对变量进行json编码;把json格式的字符串变成php变量,如果传了第二个参数true,那么返回的是数组,反之返回的是对象。
23.str_pad($id, 6, "0", STR_PAD_LEFT)
$id向左补全置六位
24.floor
取不小于当前数的整数
25.str_pad
补全字符串位数
26.ucwords,lcfirst
是字符串开头字母变大写,第一个单词首字母变小写,
27.获取网站的主域名
$str = 'http://www.baidu.com/test/123';
$position = strpos($str, '.com');
$replace = substr('$str', $position+4);
$str = str_replace($replace, '', $str);