• tip


    php在脚本中,设置执行的最大时间:ini_set("max_execution_time", 0); // s 

    php设置中国时区:date_default_timezone_set('PRC');

    1、返回上次地址栏里的地址: 

    $_SERVER['HTTP_REFERER']       
    $_SERVER["REQUEST_URI"]  ,REQUEST_URI的作用是取得当前的URI,也就除域名外后面的完整的地址路径
      当前页为:http://www.php100.com/home.php?id=23&cid=22
      echo $_SERVER["REQUEST_URI"]
      结果为:home.php?id=23&cid=22
    
    返回上一个页面的状态:echo "<script language="javascript">alert('添加成功');history.go(-1)</script>";

    2、div 如何加滚动条:给DIV限定宽度或高度,并指定overflow样式为auto,这样当内空超出后就会自动出现滚动条了.如

    <div style="100px; height:100px; overflow:auto; border:1px solid #000000;">
        <img src="" style="300px; height:300px;">
    </div>

    3、uniqid — 生成一个唯一ID         获取一个带前缀、基于当前时间微秒数的唯一ID。
    4、mb_substr — 获取字符串的部分    用在截取标题、截取描述显示

    echo mb_substr('我们都是好孩子hehe',0,9);  输出:我们都
    echo mb_substr('我们都是好孩子hehe',0,9,'utf-8');  输出:我们都是好孩子he

     第一个是以三个字节为一个中文,这就是utf-8编码的特点,下面加上utf-8字符集说明,所以,是以一个字为单位来截取的

    5、strip_tags — 从字符串中去除 HTML 和 PHP 标记
    6、识别出空格、换行符【把空格、换行转换为HTML可解析的。  str_replace( 被替换的值,替换的值,被替换的内容)】

    function htmtocode($content) {
        $content = str_replace("
    ", "<br>", str_replace(" ", "&nbsp;", $content));
        return $content;
    }

     7、parse_url() 是讲URL解析成有固定键值的数组的函数

      

    8、使用PHP cookie 当场不能生效,需要刷新一次
    9、range() 函数创建并返回一个包含指定范围的元素的数组
      $arr=range('A','Z');
        等同于: $arr=array(A,B,C,D,E,F,G,H,I,J,K,L,M,N,....Z);
    10、rand() 函数返回随机整数。
      rand(1,100);  //85
    12、允许的强制转换有:
        (int), (integer) - 转换为 整型(integer)
        (bool), (boolean) - 转换为 布尔型(boolean)
        (float), (double), (real) - 转换为 浮点型(float)
        (string) - 转换为 字符串(string)
        (binary) - 转换为二进制 字符串(string) (PHP 6)
        (array) - 转换为 数组(array)
        (object) - 转换为 对象(object)
        (unset) - 转换为 NULL (PHP 5)
    13、变量类型测试函数
          is_bool();//判断是否为布尔型
          is_int() is_integer() //判断是否是整型
          is_float(), is_double() is_real()//...
          is_array()
          is_object()
          is_resource()
          is_null()
          is_scalar()//判断是否是标量(字符串、整型、浮点型、布尔型)
          is_numberic()//判断是否是任何一种数字,或数字字符串
          is_callable()//判断是否是有效的函数名
    14、与变量和类型有关的一些常用函数
          isset();//判断一个变量是否存在,值如果是null也表示空。
          empty();//判断一个变量是否为空 "",null
          unset();//删除一个变量
          setType();//设置一个变量类型
          getType();//获取一个变量类型 var_dump();获取类型和值
     
         PHP的isset()函数 一般用来检测变量是否设置:
              功能:检测变量是否设置
              返回值:
              若变量不存在则返回 FALSE
              若变量存在且其值为NULL,也返回 FALSE
              若变量存在且值不为NULL,则返回 TURE
         PHP的empty()函数 判断值为否为空:
               功能:检查一个变量是否为空
               返回值:
               若变量不存在则返回 TRUE
               若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE
               若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 FALSE
      isset()用来检测变量是否设 置,只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。(注意的是一个 NULL 字节("")并不等同于 PHP 的 NULL 常数)
         empty()用来检查一个变量是否为空。
         他们之间最大的区别就是对于0的判断,若用empty判断会认为是空,用isset则认为不为空

    15、常量的声明与使用
         1.常量是一个简单值的标识符
         2.常量定义后不能再改变它的值,也不能使用unset()或其他的函数取消
         3.常量可以不用理会变量范围的规则而在任何地方都可以定义和访问
         4.常量使用define("常量名",值);
         5.常量名在声明和使用时都不使用"$"
         6.常量名称习惯都使用大写
         7.常量的值只能用标量类型(int,float,bool,string)
         8.常量一定要在声明时就给值
         9.defined("常量");//判断常量是否存在

    16、能够在$_SERVER中访问的最重要的元素
      
     
    17、静态局部变量的特点:
         1.不会随着函数的调用和退出而发生变化,不过,尽管该变量还继续存在,但不能使用它。倘若再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值
         2.静态局部变量只会初始化一次
         3.静态属性只能被初始化为一个字符值或一个常量,不能使用表达式。即使局部静态变量定义时没有赋初值,系统会自动赋初值0(对数值型变量)或空字符(对字符变量);静态变量的初始值为0。
         4.当多次调用一个函数且要求在调用之间保留某些变量的值时,可考虑采用静态局部变量。虽然用全局变量也可以达到上述目的,但全局变量有时会造成意外的副作用,因此仍以采用局部静态变量为宜。

    18、PHP取整函数:ceil,floor,round,intval的区别详细解析

      我们经常用到的PHP取整函数,主要是:ceil,floor,round,intval。

      ceil -- 进一法取整
      说明
      float ceil ( float value )
      返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
      PHP取整函数例子 1. ceil() 例子
    echo ceil(4.3);  // 5 
    echo ceil(9.999); // 10
      floor -- 舍去法取整  
      说明
      float floor ( float value )
      返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
      PHP取整函数例子 1. floor() 例子
    echo floor(4.3); // 4 
    echo floor(9.999); // 9
      round -- 对浮点数进行四舍五入
       float round ( float val [, int precision] )
      返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。
      PHP取整函数例子 1. round() 例子
    echo round(3.4); // 3
    echo round(3.5); // 4
    echo round(3.6); // 4
    echo round(3.6, 0); // 4
    echo round(1.95583, 2); // 1.96 
    echo round(1241757, -3); // 1242000
    echo round(5.045, 2); // 5.05 
    echo round(5.055, 2); // 5.06
      intval---对变数转成整数型态
      PHP取整函数例子intval()
    echo intval(4.3);//4
    echo intval(4.6);//4
    19、获取系统常量
    <?php
    echo "当前文件路径: ".__FILE__;      //当前文件路径: E:wampwww	est.php
    echo "<br>当前行数:".__LINE__;      //当前行数:12
    目录 (__DIR__),函数名 (__FUNCTION__),类名(__CLASS__),方法名(__METHOD__)
    echo "<br>当前PHP版本信息:".PHP_VERSION;  //当前PHP版本信息:5.5.12 echo "<br> 当前操作系统: ".PHP_OS ;    //当前操作系统: WINNT
    20、php遍历数组时     while() 通常和 list(),each()配合使用。   
    $colors = array('red','blue','green','yellow');  
    while(list($key,$val) = each($colors)) {
      echo "Other list of $val.<br />";
    }
    
    显示结果:    
        Other list of red.
      Other list of blue.
      Other list of green.
      Other list of yellow
        list的用法:  
    <?php     
    $colors = array('red','blue','green','yellow');
    list($a,$b,$c,$d)=$colors;
    echo $a,"<BR>",$b,"<BR>",$c,"<BR>",$d;
      
    显示结果:  
       red
      blue
      green
      yellow 
    21、获取内存使用情况信息    memory_get_usage() 函数获取当期内存使用情况,memory_get_peak_usage() 函数获取内存使用的峰值23、获取CPU使用情况信息 
    获取了内存使用情况,也可以使用PHP的 getrusage()获取CPU使用情况,该方法在windows下不可用。 
    print_r(getrusage());  
    /* 输出 
    Array 

    [ru_oublock] => 0 
    [ru_inblock] => 0 
    [ru_msgsnd] => 2 
    [ru_msgrcv] => 3 
    [ru_maxrss] => 12692 
    [ru_ixrss] => 764 
    [ru_idrss] => 3864 
    [ru_minflt] => 94 
    [ru_majflt] => 0 
    [ru_nsignals] => 1 
    [ru_nvcsw] => 67 
    [ru_nivcsw] => 4 
    [ru_nswap] => 0 
    [ru_utime.tv_usec] => 0 
    [ru_utime.tv_sec] => 0 
    [ru_stime.tv_usec] => 6269 
    [ru_stime.tv_sec] => 0 

    */  
    这个结构看上出很晦涩,除非你对CPU很了解。下面一些解释: 
    ru_oublock: 块输出操作
    ru_inblock: 块输入操作
    ru_msgsnd: 发送的message
    ru_msgrcv: 收到的message
    ru_maxrss: 最大驻留集大小
    ru_ixrss: 全部共享内存大小
    ru_idrss:全部非共享内存大小
    ru_minflt: 页回收
    ru_majflt: 页失效
    ru_nsignals: 收到的信号
    ru_nvcsw: 主动上下文切换
    ru_nivcsw: 被动上下文切换
    ru_nswap: 交换区
    ru_utime.tv_usec: 用户态时间 (microseconds)
    ru_utime.tv_sec: 用户态时间(seconds)
    ru_stime.tv_usec: 系统内核时间 (microseconds)
    ru_stime.tv_sec: 系统内核时间?(seconds)
    要看到你的脚本消耗了多少CPU,我们需要看看“用户态的时间”和“系统内核时间”的值。秒和微秒部分是分别提供的,您可以把微秒值除以100万,并把它添加到秒的值后,可以得到有小数部分的秒数。
      
  • 相关阅读:
    html5中新增的form表单属性
    FORM
    .Net Core 发布失败
    Sql Server查询最近执行sql
    HttpWebRequest.GetResponse()操作超时
    使用SqlBulkCopy批量插入/更新数据
    ADO .NET 往数据库批量插入数据发生错误:超时时间已到,但是尚未从池中获取链接
    Ueditor代码内容前台只显示一行
    Lambda表达式
    委托的简单使用
  • 原文地址:https://www.cnblogs.com/c-961900940/p/4119397.html
Copyright © 2020-2023  润新知