php进阶1

1.php时间函数

 

UNIX 时间戳(英文叫做:timestamp)是 PHP 中关于时间与日期的 一个很重要的概念,它表示从 1970年1月1日到当前时间的秒数之和。 PHP提供了内置函数 time() 来取得服务器当前时间的时间戳。

(1)date()

    php内置了date()函数,来取得当前的日期和时间。 格式:date(时间戳的格式, 规定时间戳【可选】)

     var_dump(date(“Y-m-d H:i:s”));//2016-11-16 21:10:13

    var_dump(date(“y-m-d h:i:s”));//16-11-16 09:10:13

    var_dump(date(“Y-m-d h:i:s”,1472903021));//返回规定的时间

    var_dump(date(“z w”));//321 4

 

 

microtime( )函数:

  返回当前微秒数和时间戳(如果给出参数为true时返回浮点数)

   var_dump(microtime()); //0.68103500 1479302563  

   var_dump(microtime(true)); //1479302563.6811

getdate( )函数:

  获取当前时间或指定时间戳的文本时间(数组形式)

   从而可以分别获得年 月 日 等值。

date_default_timezone_set('PRC');
var_dump(date_default_timezone_get());

var_dump(time());//int 1479367657
var_dump(date("Y-m-d H:s:d"));//2016-11-17 15:37:17
var_dump(date("Y-m-d H:s:d",1429366997));//2015-04-18 22:17:18
var_dump(date("w-z"));//4-321 周四 这是一年中的321天
var_dump(strtotime("2011-11-11"));//1320940800
var_dump(strtotime("2011-11-11 00:00:11"));// 1320940811
var_dump(microtime());//0.39642800 1479367657
var_dump(microtime(true));//1479367657.3964
var_dump(getdate());//数组
var_dump(getdate()['month']);//November

 

2.php数学函数:

  ceil( ) : 函数向上舍入为最接近的整数,返回float型

  floor( ) : 函数向下舍入为最接近的整数,返回float型

   max( ) : 函数返回最大值

  min( ) : 函数返回最小值

  round( ) : 对浮点数四舍五入(转换后类型为float)

  mt_rand(min, max) : 返回min到max之间的随机整数

   pow(x, y) : 计算次方值,返回 x 的 y 次方

  pi( ) : 返回圆周率的值

3.字符串操作:

  如果双引号中我们使用变量,我们可以使用{}来保住变量。

     $str1=“我是字符串”;

    echo "abcde{$str1}12345";

  当我们在字符串中显示特殊符号时,我们可以使用转义符输出。

     echo “nihao\\n大家好”;

    输出: nihao\n大家好

  (1)字符串操作:

    trim(“ bokanwensi “): 返回删除字符串首尾空白符的字符串;

    ltrim(“ bokanwensi ”): 返回删除字符串左边空格的字符串

    rtrim(“ bokanwensi ”): 返回删除字符串右边空白的字符串;

    strlen(“博看文思”); 取得字符串长度的函数;

    mb_strlen(“博看文思”, “utf-8”); 取得字符串长度的函数,可以选择编码格式

    strtolower(): 将字符串全部转为小写

    strtoupper(): 将字符串转为大写字符串

     ucfirst(): 将字符串首字母改为大写

    ucwords(): 将字符串每个词的首字母全部改为大写

    explode(“.”,”www.baidu.com”): 将字符串根据规则拆分成数组并返回新数组                                   substr(string , int start, int [length]): 返回截取字符串,若start为负数则倒数往后截取    

           mb_substr( ): 返回截取字符串,第三个参数可以修改编码格式(utf-8,gbk,GB2312)

           注:系统不支持mb_substr()的 在php.ini中查找 mbstring.dll ;extension=php_mbstring.dll把前面的;号去掉才可以使用

       strchr( 数据源,指定字符 ): 从前面开始按指定字符开始截取到最后,返回截取字符

          strrchr( 数据源,指定字符 ): 从后面开始按指定字符开始截取到最后,返回截取字符

          str_replace( 参数1 , 参数2 , 参数3 ): 参数1是替换目标,参数2是替换内容 ,参数3是查询数据源                str_ireplace( 参数1 , 参数2 , 参数3 ): 和str_replace用法一致但是不区分大小写

    md5(): 返回加密后的字符串(不可逆转的加密);

    urlencode(): 对url进行encode加密 原理就是首先把中文字符转换为十六进制,然后在每个字符前面 加一个标识符%

     urldecode(): 对url进行解密 用于解码已编码的 URL 字符串,其原理就是把十六进制字符串 转换为中文字符

$str1='abc';
echo "我是一个粉刷匠$str1";//我是一个粉刷匠abc
echo "我是一个粉刷匠$str1粉刷本领强";//报错,然后显示‘我是一个粉刷匠’
echo "我是一个粉刷匠{$str1}本领强";//我是一个粉刷匠abc本领强
$str2='  hsshidoubi  ';
var_dump(trim($str2));// string 10
var_dump(ltrim($str2));//string 12
var_dump(rtrim($str2));//string 12
var_dump(strlen($str2));//int 14
$str3='博看文思12';
var_dump(strlen($str3));//int 14
var_dump(mb_strlen($str3,'utf-8'));//int 6
$str1='123jizhimingJIZHIm456';
var_dump(strchr($str1,'m'));//mingm456
var_dump(strrchr($str1,'m'));//m456
var_dump(str_replace('jizhi','lihai',$str1));
var_dump(str_ireplace('jizhi','lihai',$str1));
$pass='hssdb';
var_dump(md5($pass));
var_dump(md5(md5($pass.'db')));//拼接一个字符
function fnMD5($str){
    return md5(md5($str.'hs'));
}
var_dump(fnMD5('12345'));
$str10="大虎蛋咿呀呀";
var_dump(mb_substr($str10, 0,6));//大虎
var_dump(mb_substr($str10, 0,5));//乱码
var_dump(mb_substr($str10,0,6,'utf-8'));//大虎蛋咿呀呀

 

4.上传文件

  超全局变量 $_FILES

    $_FILES - 存储各种与上传文件有关的信息

    $_FILES[“file”][“name”] - 被上传文件的名称

     $_FILES[“file”][“type”] - 被上传文件的类型

    $_FILES[“file”][“size”] - 被上传文件的大小,以字节计

    $_FILES[“file”][“tmp_name”] - 上传文件的临时副本名称

    $_FILES[“file”][“error”] -上传文件导致的错误代码 0 1 2 3 4

  file_exists() 函数

     file_exists() 函数检查文件或目录是否存在

    如果指定的文件或目录存在则返回 true,否则返回 false

       file_exists(path) path 规定要检查的路径

        例:file_exists( "upload/".$_FILES["file"]["name"] )

  move_uploaded_file() 函数

    move_uploaded_file() 函数

      将上传的文件移动到新位置 若成功,则返回 true,否则返回 false

     move_uploaded_file( file , newloc )

      file 规定要移动的文件

      newloc 规定文件的新位置

    例:move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$_FILES["file"]["name"]);

  其他设置

     <form> 标签的 enctype 属性规定了在提交表单时要使用哪种 内容类型。

      在表单需要二进制数据时,比如文件内容,请使用 “multipart/form-data”。

        IE识别 jpg 文件的类型必须是 pjpeg,而 FireFox必须是 jpeg。

<?php
var_dump($_FILES);
if (!empty($_FILES)) {
    if ((($_FILES['file']['type']=='image/jpeg')||($_FILES['file']['type']=='image/png')||($_FILES['file']['type']=='image/gif')||($_FILES['file']['type']=='image/pjpeg'))&&($_FILES['file']['size']<=102400)) {
        if ($_FILES['file']['error']=0) {
            if (file_exists("upload/".$_FILES["file"]["name"])){
                echo $_FILES["file"]["name"]."文件已存在";
            }else{
                move_uploaded_file($_FILES['file']['tmp_name'],"upload/".$_FILES['file']['name']);
            }
        }else{
            echo "错误编号为:".$_FILES['file']['error'];
        }
    }else{
        echo $_FILES['file']['name']."错误文件";
    }
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <form action="" method="post" enctype="multipart/form-data">
        <input type="file" name="file" required>
        <input type="submit" value="上传">
    </form>
</body>
</html>

 

posted @ 2016-11-17 16:23  赛赛大人  阅读(468)  评论(0编辑  收藏  举报