zoukankan      html  css  js  c++  java
  • 字符串函数,时间函数,数学函数,数组

    字符串函数

    strlen  获取字符串的长度,这里的长度是指该字符串的字节的长度!

    substr  从指定字符串中的指定位置开始,截取指定长度的字符!sub在这里是截取的意思,substr就是字符串截取函数

    需要三个参数:

    1, 指定的字符串

    2, 截取起始位置(以0开始)

    3, 截取的长度

    strtolower strtoupper  把字符串全部转换为小写|大写!  仅针对英文有效,也针对汉字中的英文有效!

    strrev  把字符串反转! 

    strpos  从左往右查找并返回字符串中某个字符的起始位置!

    strrpos  从左往右最后一次出现该字符的位置!

    strchr  从左往右截取指定位置(指定的字符的位置)开始以后全部的字符串!

    strrchr  从右往左截取指定位置(指定的字符的位置)开始以后全部的字符串!

    trims  tring trim ( string $str [, string $charlist = " x0B" ] )

    此函数返回字符串 str 去除首尾空白字符后的结果。如果不指定第二个参数,trim() 将去除这些字符:

    • " " (ASCII 32 (0x20)),普通空格符。
    • " " (ASCII 9 (0x09)),制表符。
    • " " (ASCII 10 (0x0A)),换行符。
    • " " (ASCII 13 (0x0D)),回车符。
    • "" (ASCII 0 (0x00)),空字节符。
    • "x0B" (ASCII 11 (0x0B)),垂直制表符

    有时候,用户在提交表单的时候(尤其是在注册用户名和写密码的时候),可能不经意间在字符串的前面或后面多敲了一些空格,为了增加客户的体验度,我们需要手动的将这些空格等特殊字符去除掉!这个功能就是由trim函数来实现的!

    str_replace

    字符串替换函数,有三个参数:

    第一个参数是替换什么字符串

    第二个参数是替换成什么字符串

    第三个参数是在哪个字符串中进行替换

    str_repeat

    有两个参数:

    第一个是需要重复的字符串

    第二个参数是重复的次数

    时间函数

    time  时间戳,格林威治197011日零时起,到现在的秒数!

    date  使用时间格式占位符将指定时间戳格式化为对应格式的形式!

    时间格式占位符有很多,但是我们只需要记忆常见的6个:

    年:Y

    月:m

    日:d

    时:H

    分:i

    秒:s

    星期:l (L的小写)

    基本的语法形式如下:

    date(“带有格式占位符的字符串,时间戳)

    其中第二个参数(时间戳)可以省略,缺省值就是当前时间戳!

    例如:

    输出结果:

    strtotime  将一个英文格式下的时间字符串,转换为一个时间戳

    例如:得到2000-1-1的时间戳

    输出结果:

    microtime  得到一个微妙的时间戳字符串(字符串型),或加上一个参数true(默认值为false)之后得到一个微妙的时间(浮点型)

    数学函数

    abs  取绝对值

    floor  向下取整,获得一个比当前数值小的最大整数!

    ceil    向上取整

    round  四舍五入

    应该有两个参数:

    第一个参数是一个数值

    第二个参数是精确的小数的位数,缺省值为0

    rand  |  mt_rand  都是获得一个指定区间的随机整数,只是mt_rand的效率比rand要高!

    注意:

    这里的区间是闭区间!(1,100)是开区间,[1,100]是闭区间!

    pow  求一个数的指数幂的值

    sqrt  求平方根!注意参数不能为负数

    max | min    求一组参数中的最大值或最小值!

    is_nan   如果 val 不是一个数字(not a number)返回 TRUE ,否则返回 FALSE 

    数组

    数组是一种复合类型,存放在内存中的堆区,里面可以保存多个不同类型的数据,而且长度默认的是没有限制! 

    数组的组成  数组,是由元素(element)组成的,每个元素都是数组的中的一个成员!

    元素的名字,叫作下标(index),也叫作键(key)。元素的值,叫作值(value)。所以,数组中的一个元素也叫作一个“键值对”(key/value

    数组的分类  根据不同的划分的标准,可以有不同的类别:

    按照键与值之间的对应关系

    索引数组  数组元素的键,不用于表示其值的含义,仅仅表示该元素在整个数组内的位置!

    1, 典型的,当一个数组的下标全部省略的时候,系统会自动的给该数组的每一个元素都加上一个下标,从0开始,依次递增,表示该数组的索引值!

    2,当省略掉其中部分元素的下标的时候,系统也会自动的给这些元素分配下标,其索引值是当前(也就是前面)已经存在的最大整型的下标加1,如果没有就从0开始

    3,如果数组中出现了相同的下标,后面的会覆盖前面的,要注意不要造成了元素的“丢失”

    4,默认的,数组元素的下标只能是两种类型,也就是整型和字符串型,虽然语法上还是允许写其他的类型,但是系统会自动的将其转换为整型或字符串型

    关联数组  就是指数组元素的键和值之间存在着一一对应的关系,也就是键表示其值的含义!

    1, 典型的,就是以字符串为下标的时候,该数组一般都是关联数组,因为此时这里的字符串可以表示一定的含义

    2,也并不是说,整型下标的数组就一定是索引数组,也有可能是关联数组所以,关键是看数组的键与值之间是否存在着一定的关系!

    3,一个数组中的下标既可以有整型也可以有字符串型,这种数组一般也称之为“混合数组”

    按照数组的维度

    一维数组  简单来说,如果一个数组的所有的元素都不是一个数组,就是一维数组!

    多维数组  超过一维的都可以叫作多维数组,就是指在一个数组中,部分或全部元素的值恰好又是一个数组!其实,严格意义上讲,PHP中并不存在传统意义上的多维数组,而是其中的某些元素的值恰好又是一个数组而已!

    注意:

    前面的关于数组的所有的分类,都知识逻辑上的分类,都是由于数组的元素键和元素的值的类型不同而已,从语法上来看,所有的数组的本质都是一样的:都是键值对!

    foreach遍历  foreach是专业遍历数组和对象的一个语句,所谓的数组的遍历,就是依次获得并处理数组中的每一个元素!

    基本语法 :foreach (数组名 as 键变量 => 值变量){循环体}

    另外,如果在遍历数组的时候,其中的键变量没有什么特殊的作用(比如索引数组),此时在遍历数组的时候可以省略掉键变量,此时,语法形式就变成了

    foreach (数组名 as 值变量){循环体}

    例如:

    注意foreach遍历的不是原数组本身,而是遍历的是对原数组的拷贝!所以也造成了以下的几个特点:

    1,保存值的变量$value,和原数组之间默认是值传递,也就是说,如果在遍历的时候对$value的值进行修改,不会影响到原数组!

    2$value的值与原数组之间也可以是引用传递的关系,就是在遍历数组的时候在$value

    的前面加上求地址运算符&即可!

    3,仅仅是数组值的变量,才支持引用传递,键变量只能支持值传递!

     foreach流程控制

    数组的指针

    key    语法是:key(数组名)      作用:获取该数组当前元素的键!

    current  语法是:current(数组名)    作用:获取该数组当前元素的值!

    next    语法是:next(数组名)      作用:将数组的指针下移一位

    reset   语法是:reset(数组名)           作用:重置数组的指针(将数组的指针重新指向第一个元素)

    prev   向上移动数组指针,previous(先前的)

    end    reset是将数组的指针移动到第一个元素,那么end也是重置指针,不过是重置到最后一个元素!

    注意:   如果指针的位置已经非法,就不能在做相对移动了(向上或向下),只能做绝对移动,也就是重置(resetend

    while+each+list遍历

    each  语法:each(函数名);  作用:同时兼备了keycurrentnext函数的功能,既可以获取到当前元素的值,也能获取到当前元素的键!

    注意each的返回值:

    1, 返回的是一个数组,而且是一个索引和关联并存的混合数组

    2, 在原有数组的当前元素的基础上,重新创建了一个新的数组,其中原数组元素的值和键都是新数组的值,并为其分别创建了索引下标和关联下标

    其中索引的:$each[0]代表原数组当前元素的键,$each[1] 代表原数组当前元素的值

    其中关联的:$each[‘key’] 代表原数组当前元素的键,$each[‘value’] 代表原数组当前元素的值

    例如:

    输出结果:

    list  也是一个系统函数,它可以利用一个索引数组,一次性的为多个变量赋值!

  • 相关阅读:
    centos7 安装mysql
    ketlle windows下的安装(最基本)
    Spark参数详解 一(Spark1.6)
    SSM项目集成Lucene+IKAnalyzer在Junit单元测试中执行异常
    解决jquery.pjax加载后的异常滚动
    码云项目克隆至github
    JFinal获取多个model
    避免layui form表单重复触发submit绑定事件
    解决pjax重复绑定
    jfinal 拦截器中判断是否为pjax请求
  • 原文地址:https://www.cnblogs.com/czhd666/p/6084089.html
Copyright © 2011-2022 走看看