PHP入门part4
字符串函数
strlen(string);
获取字符串的长度,这里的长度是指该字符串的字节长度;!!utf-8里英文字母和符号占1个字节,中文是占3个字节。
substr(string,number1,number2)
截取字符串,number1是开始截取的位置,以0开始,number2是截取的长度。
strtolower | strtoupper
把字符串里的英文字母变小写 | 把字符串里的英文字母变大写
strrev
把字符串反转,是按字节来反转,所以反转汉字会出现乱码。
strpos(string,string的某个字符)
pos是position位置的意思,
所以该函数的作用就是从左往右查找并返回字符串中某个字符的起始位置!
strrpos(string,string的某个字符)
从右往左进行查找!也可以认为是从左往右最后一次出现该字符的位置!
strchr(string,string的某个字符)
也是截取字符串,是从左往右截取指定位置(指定的字符的位置)开始以后全部的字符串!
strrchr(string,string的某个字符)
是从右往左截取指定位置(指定的字符的位置)开始以后全部的字符串!
trim(string,\t\n\r\0\x08)
此函数去除首尾空白字符并返回结果。不写后面的参数就是删除空格。
str_repeat(string,number)
第一个是需要重复的字符串,第二个是重复的次数
时间函数
time
时间戳,格林威治1970年1月1日零时起,到现在的秒数!
date
使用时间格式占位符将指定时间戳格式化为对应格式的形式!
年:Y 月:m 日:d 时:H 分:i 秒:s
语法: date(“带有格式占位符的字符串”,时间戳)
其中第二个参数(时间戳)可以省略,缺省值就是当前时间戳!
strtotime
将一个英文格式下的时间字符串,转换为一个时间戳!
microtime()
一般可以用来测试代码执行的效率!
得到一个微妙的时间戳字符串(字符串型),或加上一个参数true(默认值为false)之后得到一个微秒的时间(浮点型)
数组
创建数组语法
$arr = array(
string1 => string,
string2 => string,
…………………………
stringn => string
)
$arr ['string1'] = string;
$arr ['string2'] = string;
……………………………………
$arr ['stringn'] = string;
数组的遍历
除了用for循环来遍历,还可以用foreach来遍历
语法foreach(数组名 as $key(键变量) => $value(值变量)){
循环体//对值变量和键变量的操作
}
键变量就是数组的索引值。
数组函数
接下来讲常用的和常见的数组函数
count:
计算并返回数组中的元素个数或者对象中的属性个数!
在计算多维数组时是把一维数组的个数和一维数组元素里的数组个数相加。
count还有第二个参数,默认为false,如果系true,则支持递归统计。
range:
建立一个包含指定范围单元的数组,有三个参数1,开始的字符或数字;2,结束的字符或数字;3,步伐:一次跳转几个字符或数字。
array_merge:
将几个数组合并成一个数组。一个数组中的值附加在前一个数组的后面。另外,运算符+也可以实现数组的合并;
array_rand:
随机抽取数组内的几个元素的键,并返回一个索引数组!
需要两个参数:1,数组名2,抽取的个数 !!省略掉第二个参数默认为1.
shuffle
打乱一个数组,只有一个参数 1.数组名
array_keys
获取所有元素的键,返回一个索引数组,只有一个参数 1.数组名
array_values
获取所有元素的值,返回一个索引数组,只有一个参数 1.数组名
array_combine
有两个参数,1数组名,这个数组作为新数组的键;2,数组名,这个数组作为新数组的值
组成一个新数组,要求两个数组的个数相同。
array_flip
交换数组的键和值
in_array
判断一个数据是否是某个数组里面元素的值!返回一个布尔值!
两个参数1具体数据;2数组名。
array_key_existe:
判断一个数组内是否存在某个键,返回一个布尔值
两个参数1具体数据;2数组名。
array_search
搜索数组内的某个元素的值, 并返回其下标值
两个参数1具体的值;2数组名
array_chunk
有两个参数1数组名,2要合并的值的多少
将一个数组里面的值合成一个数组,合成的值要多少个取决于第二个参数
implode
将一个数组元素的所有的值,利用一个指定的分隔符连接成一个字符串!
两个参数
1,分割符,这里可以省略,如果省略,那就是没有分隔符 2,数组名
explode
将一个字符串,利用其中的分隔符,将其分割成多个部分,形成一个数组!
两个参数
1,分隔符 2,字符串!
extract
将数组中的每一个元素都变成一个变量,其中变量的名字就是数组元素的键,变量的值就是数组元素的值!
只有一个参数,1,数组名
compact
利用多个变量,形成一个数组,数组元素的键就是变量的名字,数组元素的值就是变量的值!
array_map
对数组中的每一个元素,都由系统调用某个函数!
array_push
将一个或多个数据压入数组的尾部!
array_pop:
将数组的最后一个数据弹出
array_unshift:
从数组的前面加入数据
array_shift:
从数组的前面弹出数据
sort
对数组中的元素进行升序排序,也就是从低到高!
排序之后,会丢失原数组的键,重新生成一个索引数组!
asort
也是升序排序,只是排序后会保留以前的键值对!
rsort
对数组元素的值进行降序排序,也就是从高到低:
排序之后会重新生成一个索引数组!
arstort
也是降序排序,只是会保留以前的键值对!
PHP入门part4的更多相关文章
- maven入门-- part4 坐标和依赖
Maven的坐标为各种构件引入了秩序,任何一个构件都必须明确的定义自己的坐标,maven的坐标包括如下的元素: groupId: 定义当前Maven项目隶属的实际项目 artifactId: 该元素定 ...
- Hadoop入门学习笔记---part4
紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...
- 【PyTorch深度学习60分钟快速入门 】Part4:训练一个分类器
太棒啦!到目前为止,你已经了解了如何定义神经网络.计算损失,以及更新网络权重.不过,现在你可能会思考以下几个方面: 0x01 数据集 通常,当你需要处理图像.文本.音频或视频数据时,你可以使用标准 ...
- django入门-表单-part4
尊重作者的劳动,转载请注明作者及原文地址 http://www.cnblogs.com/txwsqk/p/6514113.html 完全翻译自官方文档 https://docs.djangoproje ...
- C语言编程入门之--第五章C语言基本运算和表达式-part4
5.3.5 和二进制极为密切的运算符 本小节的运算符需要借助二进制概念来理解. 二进制数据中,比如一个字节的数据,它的十进制为228,二进制就为11100100,如图5.11, 注意:如果不懂怎么转换 ...
- Hadoop入门学习笔记---part3
2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...
- [EntLib]微软企业库5.0 学习之路——第一步、基本入门
话说在大学的时候帮老师做项目的时候就已经接触过企业库了但是当初一直没明白为什么要用这个,只觉得好麻烦啊,竟然有那么多的乱七八糟的配置(原来我不知道有配置工具可以进行配置,请原谅我的小白). 直到去年在 ...
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
随机推荐
- tableView的高度问题
新建tableView 到一个普通的视图控制器的View 下,如果大小是全屏高 ,你的数据最下面显示不全,需要在设置高度时候,用屏幕高度-65 即可
- Caffe 源碼閱讀(六) InternalThread
类InternalThread是一个虚类,是Caffe中的多线程接口,其本质是为封装了boost::thread 看源码可以得到以下结论: 1.每个派生类都需要实现一个InternalThreadEn ...
- 【转】最佳Restful API 实践
原文转自:https://bourgeois.me/rest/ REST APIs are a very common topic nowaday; they are part of almost e ...
- 字符串反转C#的实现
字符串反转是面试过程中出现频率较高的算法题,今天一个牛同事让我用C#帮他实现这个算法,前提当然是不能使用类库. 例如: how are you 的反转结果为 you are how. 算法1: 是我当 ...
- iOS 源代码管理工具之SVN
源代码管理工具之SVN 源代码管理工具SVN是一款非常强大的源代码管理工具,现在国内70%-90%的公司都在使用SVN来管理源代码,下面就让小编给大家着重介绍一下SVN的使用,SVN的使用主要分为下面 ...
- Network Assistant (Alpha)版使用说明
Network Assistant (网络助手)使用说明 本软件是一款帮助同学方便Ip更改,小蝴蝶断线重连,一键wifi,定时关机的软件.它集成 ...
- C++开发过程多线程同步lock的实现
在程序开发过程经常使用到多线程,而多线程始终与锁存在紧密地联系,以下详细的介绍如何在C++程序开发过程中自定义锁的几种方法. 1. 下面给出一段代码展现如何通过Mutex实现锁的功能(window p ...
- C++学习笔记30:模板与型式参数化
转型操作 接受目标型式作为模板参数 Programmer *p = dynamic_cast<Programmer*>(e) 模板工作原理 使用template<typename T ...
- 折腾域名的dns
最近,购买域名的时候遇到了几个概念,刚开始不是很懂,最后都是直接找客服给我改好的,现在小结一下帮助理解. DNS域名管理是按后缀进行分组的,比如.com域名,作为最早的商用域名,有很高的推广价值.再比 ...
- C++模板实例化
深入理解C++中第七章提到模板实例化参数的选择:函数的决议结果只和函数参数有关和返回值无关.记录一下. 测试程序如下: #include <iostream> using namespac ...