一、内置函数
php软件系统中自带的默认函数
1,内置函数分类
1,文件相关函数;
2,数值处理函数;
3,字符处理函数;
4,数组处理函数;
5,时间信息函数;
6,目录和文件相关的函数;
2,文件调用
被调用的文件
<?php
$x = 200; //变量
define("y",300); //常量
?>
php脚本代码,引用文件
<?php
header("content-type:text/html; charset=utf-8");
include('test02.php');
echo $x.'<br />';
echo y;
?>
· 文件调用的方式
include: #调用某个文件中的代码,如果我调用的脚本不存在,会warning警告,不会中断脚本的执行;
############################################################################
require: #调用某个文件中的代码,如果我调用的脚本不存在,会error报错,脚本会停止执行;
include_once: #如果代码过多,忘记了是否调用过一个文件,那么就是用这个来再次调用;
##############################################################################
- 这个函数会判断,之前是否调用过,如果调用过,就不再调用了,如果没调用过,就直接调用;
- 现在新版本的php中,重复调用的问题已经自动解决了;
require_once:同上
3,数值处理函数
· abs()取绝对值
<?php
$x = -3.1415;
echo abs($x);
?>
· ceil()函数:进一法取整
<?php
$x = 3.1415;
echo ceil($x);
?>
进一位小数后面的小数部分去掉,直接在这个基础上+1
· floor()函数:舍去法取整
<?php
$x = 3.1415;
echo floor($x);
?>
· fmod()函数:浮点数取余
我们知道%是整数取余。那么小数取余使用它,就是不好使;
<?php
$x = 200.34;
$y =30.66;
$z = fmod($x,$y);
echo $z;
?>
· pow(n,m)函数:n的m次方
<?php
$x = pow(2,10);
echo $x;
?>
· round()函数:浮点数四舍五入取整
<?php
$x = 3.44159265;
$z = round($x);
echo $z;
?>
· number_format()函数:浮点数四舍五入取整(千分位显示)
<?php
$x = 30000.44159265;
$z = round($x);
echo $z.'<br />';
$y = number_format($x);
echo $y;
?>
· sqrt()函数:求平方根
<?php
$x = 64;
$z = sqrt($x);
echo $z.'<br />';
?>
· rand()和mt_rand()函数:生成随机数
<?php
$x = rand(0,9);
$z = mt_rand(0,9);
echo $x.'<br />'.$z;
?>
· pi()函数:打印3.1415926…
<?php
echo pi();
?>
4,字符的处理函数
· trim()函数:取出字符串两端空格
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
<title>用户名输入</title>
</head>
<body>
<form action="test.php" method="get">
请输入用户名:<input type="text" name="uname"><br />
提交:<input type="submit" value="提交">
</form>
</body>
</html>
<?php
header("content-type:text/html; charset=utf-8");
$un = $_GET['uname'];
if(trim($un) == "admin" ){
//js代码,日后将
echo "<script>alert('登录成功');windows.location.herf='test.html'</script>";
}else{
echo "<script>alert('登录失败');windows.location.herf='test.html'</script>";
}
?>
· dirname函数:截取路径信息
<?php
$b = __FILE__;
echo $b.'<br />';
echo dirname($b);
?>
· str_pad函数:字符填充
语法:【str_pad(被填充的字符串,填充完一共多少位,用什么字符进行填充,在左边还是右边填充)】
<?php
for($i = 1; $i <= 1000; $i++){
echo $i.'<br />';
}
?>
填充后
<?php
for($i = 1; $i <= 1000; $i++){
echo str_pad($i,4,0,STR_PAD_LEFT).'<br />';
}
?>
· str_repeat()函数:重复打印
可以设置重复打印的次数
重复打印:“卧槽、这年轻人!”;
<?php
echo str_repeat("卧槽、这年轻人!",9);
?>
表格插入案例,重做
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
<title>猜数字</title>
</head>
<body>
<form action="test.php" method="get">
请输入行数:<input type="text" name="rows"><br />
请输入列数:<input type="text" name="cols"><br />
插入表格:<input type="submit" value="插入">
</form>
</body>
</html>
php代码
<?php
header("content-type:text/html; charset=utf-8");
//承接用户的提交表单变量
$u_row = $_GET['rows'];
$u_col = $_GET['cols'];
echo '<table border="1">';
for( $df_row = 1; $df_row <= $u_row; $df_row++ ){
echo '<tr>';
//使用str_repeat提到for循环嵌套;
echo str_repeat("<td>卧槽、这年轻人</td>",$u_col);
echo '</tr>';
}
echo '</table>';
?>
· str_replace()函数:字符替换
类似于linux中sed功能;
语法:【str_resplace(要被替换的字符,替换成什么,被处理的数据)】
<?php
$i = str_repeat("卧槽、这年轻人!",9);
echo str_replace("、","!",$i);
?>
· str_shuffle函数:随机打乱字符串的顺序
<?php
$i = "abcdefghijklmnopqrstuvwxyz";
echo str_shuffle($i);
?>
拓展:unqid()函数,生成随机数,它会根据当前时间的时间戳来生成随机及字符串;
5,时间相关函数
· 设置/查看php时区
<?php
//查看当前php使用的时区
//echo date_default_timezone_get();
//设置php时区为上海
date_default_timezone_set('Asia/Shanghai');
echo date_default_timezone_get();
?>
手动修改php的时区,去找php配置文件:php.ini
· 时间信息函数:time
获取当前的时间戳;
时间戳:1970年1月1日0点开始,到此时此刻的秒数;
一般情况下:数据库存储的时间,都是用时间戳
<?php
echo time();
?>
· date()函数:显示具体时间
<?php
echo date("Y-m-d H:i:s");
?>
Y #年
m #阿拉伯数字的月
M #英文的月
d #日
H #小时
i #分钟
s #秒
使用date将时间戳,转换成具体的人类可读的时间
<?php
echo date("Y-m-d H:i:s",time());
?>
· 时间数组函数getdate
获取时间,以数组的方式显示出来
<?php
var_dump(getdate());
?>
strtotime函数:将时间转换成时间戳
前端用户,输入时间信息提交,后端将时间信息转换成时间戳;
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
<title>时间</title>
</head>
<body>
<form action="test.php" method="get">
请选择时间:<input type="date" name="sj"><br />
提交:<input type="submit" value="提交">
</form>
</body>
</html>
php代码
<?php
header("content-type:text/html; charset=utf-8");
$shijian = $_GET['sj'];
echo strtotime($shijian);
?>