zoukankan      html  css  js  c++  java
  • php中相关函数

    1.php标准风格

    <?php 
    //这是标准风格
    echo '推荐标准风格';
    ?>

    2.php中文乱码

    .html:<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    .php:header('content-type:text/html;charset=utf-8');

    3.定义变量,变量可以不声明直接使用

    //一次声明多个变量并且赋值相同
    $i=$j=$k=$m=$n=1;
    //可变变量的例子
    $a='b';
    $b='c';
    $c='d';
    echo $$$a;//$$$a=$$b=$c=d
    //取地址符号
    //取地址符号
    $i=1;
    $j=&$i;
    echo $j;//1
    echo '<br/>';
    $j=3;
    echo $j,'<br/>';//3
    echo $i;//3
    echo '<hr/>';

    4.unset注销变量

    //unset($var):注销变量
    $i=1;
    echo $i;//1
    unset($i);
    echo $i;//
    var_dump($i);//NULL

    5.类型转换

    //临时转换
    $var=12;
    var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);
    //通过函数的形式实现临时转换
    echo intval($var);

    6.settype设置变量类型

    $var=1;
    settype($var,'float');

    7.gettype获取变量类型

    $var=1;
    echo gettype($var);

    8.检测变量

    //检测变量是否为整型
    $var=1;
    var_dump(is_int($var),is_integer($var),is_long($var));
    echo '<hr/>';
    //检测变量是否为浮点类型
    $var=1.2;
    var_dump(is_float($var),is_double($var),is_real($var));
    echo '<hr/>';
    //检测是否是字符串类型
    $var='king';
    var_dump(is_string($var));
    echo '<hr/>';
    //检测是否是布尔类型
    $var=false;
    var_dump(is_bool($var));
    echo '<hr/>';
    //检测是否是标量
    $var=123;
    var_dump(is_scalar($var));
    echo '<hr/>';
    //检测是否是数组
    $var=array();
    var_dump(is_array($var));
    echo '<hr/>';
    //检测是否是资源
    $var=fopen('test_9.php','r');
    var_dump(is_resource($var));
    echo '<hr/>';
    //检查是否是对象
    $var=new stdClass();
    var_dump(is_object($var));
    echo '<hr/>';
    //检测是否为NULL
    $var=null;
    var_dump(is_null($var));
    
    //检测是否为数值型,或者字符串的数值
    $var=1;
    $var='1.1';
    $var='3king';
    var_dump(is_numeric($var));

    9.定界符:<<<

    $title='test';
    $content="自学PHP";
    
    $test=<<<EOD
        this is a test,
        {$title}<br/>
        {$content}    <br/>    
    EOD;
    
    或者:
    
    $test=<<<"EOD"
        this is a test,
        {$title}<br/>
        {$content}    <br/>    
    EOD;

    10.系统常量

    echo PHP_VERSION;//得到PHP版本
    echo '<hr/>';
    echo PHP_OS;//服务器端的操作系统
    echo '<hr/>';
    echo M_PI;//PI的值

    11.define定义常量

    define('MARRIED',true);//值为true时不区分大小写,默认为false

    12.通过constant函数得到常量的值

    const USERNAME="king";
    echo constant('USERNAME');//king

    13.defined检测常量名称是否被定义过

    const USERNAME="king";
    var_dump(defined('USERNAME'),defined('PASSWORD'));//bool(true) bool(false)

    14.通过const 定义常量

    const ROOT='this is ROOT';
    echo ROOT;

    15.get_defined_constants();得到所有已定义的常量

    //得到所有已定义的常量,返回的是关联数组
    print_r(get_defined_constants());

     16.自增自减

     $var=1;
     前缀形式:++$var,--$var,先加减1,在执行
     后缀形式:$var++,$var--,先执行,在加减1
     对于数值型支持自增自减运算符
     布尔类型不支持自增自减运算符
     null只支持自增,不支持自减
     字符串只支持自增,不支持自减

    17.mt_rand($min,$max):产生一个更好的随机数

    $s=mt_rand(0,1);
    echo $s;//  0/1

    18.strlen($string):得到字符串的长度

    19.strpos($string,$search[,$offset]):查找一个字符串中是否存在另一个字符串,如果找到了,返回这个字符串

    第一次出现的位置,如果没找到返回false

    $str='kaingkaing';
    echo strpos($str,'a');//1
    echo strpos($str,'a',2);//6

    20.date

    /*
     设置时区:
     通过函数的形式动态设置时区
     date_default_timezone_get():得到当前的默认时区
     date_default_timezone_set($timezone):设置时区
     PRC:中华人民共和国
     Asia/Shanghai
     Asia/Chongqing
     针对于当前脚本有效
     
     通过修改PHP配置文件date.timezone设置时区,针对于所有脚本都生效
     
     ini_set($name,$value):运行时设置PHP的配置选项
     ini_get($name):得到PHP配置选项的值
     
     date($format[,$time=time()]):得到当前服务器的日期时间
     Y:代表4位的年
     m:代表2位的月
     d:代表2位的日
     H:代表2位的小时
     i:代表2位的分钟
     s:代表2位的秒
     w:返回一周内的第多少天,0~6,0代表星期日
     */
    //得到默认时区
    echo @date_default_timezone_get();//Asia/Shanghai
    date_default_timezone_set('PRC');
    echo date("Y年m月d日 H:i:s");//2017年11月23日 09:53:22

    21.ini_get()获取php.ini文件中时区

    echo ini_get('date.timezone');

    22.ini_set()

    ini_set('date.timezone','PRC');

    23.isset($var)、empty($var)

    /*
     isset($var):检测变量是否被设置,只要变量有值,并且值不为空,isset返回true,否则返回
     false
     
     empty($var):检测变量是否为空,也就是转换成布尔类型false那些情况,如果为空返回true
     否则返回false
     */
    $var=1;//true
    $var=0;//true
    $var='';//true
    $var="";//true
    $var=null;//false
    var_dump(isset($var));
    $var=0;//true
    $var=0.0;//true
    $var='';//true
    $var='0';//true
    $var=false;//true
    $var=null;//true
    $var=array();//true
    var_dump(empty($var));

    24. exit;//exit或者die终止执行了

    exit;
    exit(‘终止执行’);

    25.strip_tags($string[,$allowTags]):过滤HTML标记

    $string='<h1><a href="http://www.maiziedu.com/">maiziedu</a></h1>';
    echo $string;
    echo '<hr/>';
    echo strip_tags($string);
    echo '<hr/>';
    echo strip_tags($string,'<a>');

    26.strtolower($string):返回小写的字符串

    strtoupper($string):返回大写之后的字符串

    27.strcmp($str1,$str2):比较两个字符串的大小

    $str1=$str2,返回0
    $str1>$str2,返回1
    $str1<$str2,返回-1

    strcasecmp($str1,$str2):忽略大小写的比较两个字符串
    $str1=$str2,返回0
    如果不等返回的是Ascii差
    28.trim($string[,$charList]):默认去掉字符串两端的空格,也可以去掉指定字符串

    ltrim($string[,$charList]):
    rtrim($string[,$charList]):

    $string='abcdcba';
    echo '!'.$string.'!';//! abcdcba !
    echo '<hr/>';
    echo '!'.trim($string,'acb').'!';//!d!
    echo '<hr/>';
    echo '!'.trim($string,'a').'!';//!bcdcb!
    echo '<hr/>';
    echo '!'.trim($string,'ac').'!';//!bcdcb!

     29.goto

    //goto testFor;//不能跳入循环、switch...case语句、函数和类
    
    echo 'starting...';
    echo '<hr/>';
    
    goto next;
    
    echo 'this is a test';
    
    next://名称:来定义标识符
    echo 'this is next ...';
    echo '<hr/>';
    /*
    starting...
    this is a testthis is next ...
    
    */

    30.$arr=range(low,high,step);//步长

    $arr=range(1,10,2);//步长
    print_r($arr);//Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 )

     31.compact快速关联数组

    $username='king';
    $age=12;
    $email='382771946@qq.com';
    $addr='bj';
    $userInfo=compact('username','age','email','addr');//Array ( [username] => king [age] => 12 [email] => 382771946@qq.com [addr] => bj )
    print_r($userInfo);

     32.foreach函数

     foreach($数组名称 as $val){
         循环体;
     }
    foreach($$数组名称as $val):
        echo $val,'<br/>';
    endforeach;

    33.file_put_contents($filename, $data):向.txt文件中写入数据

    /*file_put_contents($filename,$data):向指定文件写内容,如果文件不存在,则会创建
    如果存在,会将之前的内容清空在写入
    */
    $filename='message.txt';
    $data=1;
    $data=1.2;
    $data=true;
    $data='this is a test';
    $data=array(1,2,3,4,5,array('a','b','c'));
    file_put_contents($filename, $data);

    34.serialize($value):返回序列化之后的字符串

    // serialize($value):返回序列化之后的字符串
    $value=1;//i:1;
    $value=1.2;//d:1.2;
    $value=true;//b:1;
    $value='king';//s:4:"king";
    $value=null;//N;
    $value=array('aaa','b',true,'',null);//a:5:{i:0;s:3:"a";i:1;s:1:"b";i:2;b:1;i:3;s:0:"";i:4;N;}
    echo serialize($value);
    echo '<hr/>';
    //unserialize($value):将序列化之后的字符串反序列化

    35.file_exists

        //file_exists($path):检测文件或者目录是否存在
        //filesize($filename):得到文件大小,返回的是字节

    35.count(),或是sizeof()

  • 相关阅读:
    Git Bash主题配置
    vuex里mapState,mapGetters使用详解
    Vue基础汇总实践
    Chrome for Mac键盘快捷键!来自Google Chrome官网!
    Vue中ESlint配置文件.eslintrc文件
    axios的get,post方法
    正则表达式识别标记——包括它之间的标记
    关于如何在微信里面让video不全屏播放
    javascript执行机制
    防止表单多次提交方法之二
  • 原文地址:https://www.cnblogs.com/theWayToAce/p/7883222.html
Copyright © 2011-2022 走看看