php5 数据类型
一、PHP主要有一下几种数据类型
String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)
二、PHP整型
1.整数可以是正数或者负数
2.整型有三种格式:十进制、十六进制(0x开头)、八进制(0开头)
三、PHP null值
null值表示数据类型为null,可以通过设置变量值为 NULL 来清空变量数据。
在PHP中要判断一个变量是否NULL有很多方式:
is_null VS isset
这两个函数都可以来判断一个变量是否为NULL,它们对空字符串,0,false的认同是一样的。即is_null=! isset()。
但是isset是语法结构,is_null是函数。在性能上,语法结构相对要优秀一点。所以很多地方都推荐使用isset来代替is_null的使用。
== VS ===
在有些情况下,推荐使用isset来判断一个变量是否为NULL。
但是从语义上来说,一个变量”是否已显示初始化“和”是否为NULL“是不同的概念,在某些场景下使用isset是不合适的,比如检查一个函数的返回值是否为NULL。
此时可以使用"=="和”===“来判断它们是否为NULL。
对于"=="和”===“,它们直接的区别还是很大。对于"==",它认同空字符串,0,false都为NULL。而对于"===",只有一个变量真的为NULL,它才代表NULL。
另外"==="相对于"isset"来说,性能基本接近,甚至要好点。
因此综上述,判断一个变量是否为NULL最好的办法就是直接使用"===",这样就不用在is_null,isset之间犹豫。其实上述的结论也同理于False的判断。
四、PHP 常量
常量值被定义后,在脚本的其他任何地方都不能被改变。
一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。 (常量名不需要加 $ 修饰符)。
设置常量,使用 define() 函数,函数语法如下:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] ) case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。
五、PHP 字符串
在 PHP 中,只有一个字符串运算符:并置运算符 (.) 用于把两个字符串值连接起来。
1.strlen() 函数返回字符串的长度(字符数)。
2.strpos() 函数用于在字符串内查找一个字符或一段指定的文本。如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
| 函数 | 描述 |
|---|---|
| addcslashes() | 返回在指定的字符前添加反斜杠的字符串。 |
| addslashes() | 返回在预定义的字符前添加反斜杠的字符串。 |
| bin2hex() | 把 ASCII 字符的字符串转换为十六进制值。 |
| chop() | 移除字符串右侧的空白字符或其他字符。 |
| chr() | 从指定 ASCII 值返回字符。 |
| chunk_split() | 把字符串分割为一连串更小的部分。 |
| convert_cyr_string() | 把字符串由一种 Cyrillic 字符集转换成另一种。 |
| convert_uudecode() | 对 uuencode 编码的字符串进行解码。 |
| convert_uuencode() | 使用 uuencode 算法对字符串进行编码。 |
| count_chars() | 返回字符串所用字符的信息。 |
| crc32() | 计算一个字符串的 32 位 CRC(循环冗余校验)。 |
| crypt() | 单向的字符串加密法(hashing)。 |
| echo() | 输出一个或多个字符串。 |
| explode() | 把字符串打散为数组。 |
| fprintf() | 把格式化的字符串写入到指定的输出流。 |
| get_html_translation_table() | 返回 htmlspecialchars() 和 htmlentities() 使用的翻译表。 |
| hebrev() | 把希伯来(Hebrew)文本转换为可见文本。 |
| hebrevc() | 把希伯来(Hebrew)文本转换为可见文本,并把新行(\n)转换为 <br>。 |
| hex2bin() | 把十六进制值的字符串转换为 ASCII 字符。 |
| html_entity_decode() | 把 HTML 实体转换为字符。 |
| htmlentities() | 把字符转换为 HTML 实体。 |
| htmlspecialchars_decode() | 把一些预定义的 HTML 实体转换为字符。 |
| htmlspecialchars() | 把一些预定义的字符转换为 HTML 实体。 |
| implode() | 返回一个由数组元素组合成的字符串。 |
| join() | implode() 的别名。 |
| lcfirst() | 把字符串中的首字符转换为小写。 |
| levenshtein() | 返回两个字符串之间的 Levenshtein 距离。 |
| localeconv() | 返回本地数字及货币格式信息。 |
| ltrim() | 移除字符串左侧的空白字符或其他字符。 |
| md5() | 计算字符串的 MD5 散列。 |
| md5_file() | 计算文件的 MD5 散列。 |
| metaphone() | 计算字符串的 metaphone 键。 |
| money_format() | 返回格式化为货币字符串的字符串。 |
| nl_langinfo() | 返回指定的本地信息。 |
| nl2br() | 在字符串中的每个新行之前插入 HTML 换行符。 |
| number_format() | 通过千位分组来格式化数字。 |
| ord() | 返回字符串中第一个字符的 ASCII 值。 |
| parse_str() | 把查询字符串解析到变量中。 |
| print() | 输出一个或多个字符串。 |
| printf() | 输出格式化的字符串。 |
| quoted_printable_decode() | 把 quoted-printable 字符串转换为 8 位字符串。 |
| quoted_printable_encode() | 把 8 位字符串转换为 quoted-printable 字符串。 |
| quotemeta() | 引用元字符。 |
| rtrim() | 移除字符串右侧的空白字符或其他字符。 |
| setlocale() | 设置地区信息(地域信息)。 |
| sha1() | 计算字符串的 SHA-1 散列。 |
| sha1_file() | 计算文件的 SHA-1 散列。 |
| similar_text() | 计算两个字符串的相似度。 |
| soundex() | 计算字符串的 soundex 键。 |
| sprintf() | 把格式化的字符串写入一个变量中。 |
| sscanf() | 根据指定的格式解析来自一个字符串的输入。 |
| str_getcsv() | 把 CSV 字符串解析到数组中。 |
| str_ireplace() | 替换字符串中的一些字符(大小写不敏感)。 |
| str_pad() | 把字符串填充为新的长度。 |
| str_repeat() | 把字符串重复指定的次数。 |
| str_replace() | 替换字符串中的一些字符(大小写敏感)。 |
| str_rot13() | 对字符串执行 ROT13 编码。 |
| str_shuffle() | 随机地打乱字符串中的所有字符。 |
| str_split() | 把字符串分割到数组中。 |
| str_word_count() | 计算字符串中的单词数。 |
| strcasecmp() | 比较两个字符串(大小写不敏感)。 |
| strchr() | 查找字符串在另一字符串中的第一次出现。(strstr() 的别名。) |
| strcmp() | 比较两个字符串(大小写敏感)。 |
| strcoll() | 比较两个字符串(根据本地设置)。 |
| strcspn() | 返回在找到任何指定的字符之前,在字符串查找的字符数。 |
| strip_tags() | 剥去字符串中的 HTML 和 PHP 标签。 |
| stripcslashes() | 删除由 addcslashes() 函数添加的反斜杠。 |
| stripslashes() | 删除由 addslashes() 函数添加的反斜杠。 |
| stripos() | 返回字符串在另一字符串中第一次出现的位置(大小写不敏感)。 |
| stristr() | 查找字符串在另一字符串中第一次出现的位置(大小写不敏感)。 |
| strlen() | 返回字符串的长度。 |
| strnatcasecmp() | 使用一种"自然排序"算法来比较两个字符串(大小写不敏感)。 |
| strnatcmp() | 使用一种"自然排序"算法来比较两个字符串(大小写敏感)。 |
| strncasecmp() | 前 n 个字符的字符串比较(大小写不敏感)。 |
| strncmp() | 前 n 个字符的字符串比较(大小写敏感)。 |
| strpbrk() | 在字符串中搜索指定字符中的任意一个。 |
| strpos() | 返回字符串在另一字符串中第一次出现的位置(大小写敏感)。 |
| strrchr() | 查找字符串在另一个字符串中最后一次出现。 |
| strrev() | 反转字符串。 |
| strripos() | 查找字符串在另一字符串中最后一次出现的位置(大小写不敏感)。 |
| strrpos() | 查找字符串在另一字符串中最后一次出现的位置(大小写敏感)。 |
| strspn() | 返回在字符串中包含的特定字符的数目。 |
| strstr() | 查找字符串在另一字符串中的第一次出现(大小写敏感)。 |
| strtok() | 把字符串分割为更小的字符串。 |
| strtolower() | 把字符串转换为小写字母。 |
| strtoupper() | 把字符串转换为大写字母。 |
| strtr() | 转换字符串中特定的字符。 |
| substr() | 返回字符串的一部分。 |
| substr_compare() | 从指定的开始位置(二进制安全和选择性区分大小写)比较两个字符串。 |
| substr_count() | 计算子串在字符串中出现的次数。 |
| substr_replace() | 把字符串的一部分替换为另一个字符串。 |
| trim() | 移除字符串两侧的空白字符和其他字符。 |
| ucfirst() | 把字符串中的首字符转换为大写。 |
| ucwords() | 把字符串中每个单词的首字符转换为大写。 |
| vfprintf() | 把格式化的字符串写到指定的输出流。 |
| vprintf() | 输出格式化的字符串。 |
| vsprintf() | 把格式化字符串写入变量中。 |
| wordwrap() | 按照指定长度对字符串进行折行处理。 |
PHP 5 Array 函数
| 函数 | 描述 |
|---|---|
| array() | 创建数组。 |
| array_change_key_case() | 返回其键均为大写或小写的数组。 |
| array_chunk() | 把一个数组分割为新的数组块。 |
| array_column() | 返回输入数组中某个单一列的值。 |
| array_combine() | 通过合并两个数组(一个为键名数组,一个为键值数组)来创建一个新数组。 |
| array_count_values() | 用于统计数组中所有值出现的次数。 |
| array_diff() | 比较数组,返回两个数组的差集(只比较键值)。 |
| array_diff_assoc() | 比较数组,返回两个数组的差集(比较键名和键值)。 |
| array_diff_key() | 比较数组,返回两个数组的差集(只比较键名)。 |
| array_diff_uassoc() | 比较数组,返回两个数组的差集(比较键名和键值,使用用户自定义的键名比较函数)。 |
| array_diff_ukey() | 比较数组,返回两个数组的差集(只比较键名,使用用户自定义的键名比较函数)。 |
| array_fill() | 用给定的键值填充数组。 |
| array_fill_keys() | 用给定的指定键名的键值填充数组。 |
| array_filter() | 用回调函数过滤数组中的元素。 |
| array_flip() | 反转/交换数组中的键名和对应关联的键值。 |
| array_intersect() | 比较数组,返回两个数组的交集(只比较键值)。 |
| array_intersect_assoc() | 比较数组,返回两个数组的交集(比较键名和键值)。 |
| array_intersect_key() | 比较数组,返回两个数组的交集(只比较键名)。 |
| array_intersect_uassoc() | 比较数组,返回两个数组的交集(比较键名和键值,使用用户自定义的键名比较函数)。 |
| array_intersect_ukey() | 比较数组,返回两个数组的交集(只比较键名,使用用户自定义的键名比较函数)。 |
| array_key_exists() | 检查指定的键名是否存在于数组中。 |
| array_keys() | 返回数组中所有的键名。 |
| array_map() | 将用户自定义函数作用到给定数组的每个值上,返回新的值。 |
| array_merge() | 把一个或多个数组合并为一个数组。 |
| array_merge_recursive() | 递归地把一个或多个数组合并为一个数组。 |
| array_multisort() | 对多个数组或多维数组进行排序。 |
| array_pad() | 将指定数量的带有指定值的元素插入到数组中。 |
| array_pop() | 删除数组中的最后一个元素(出栈)。 |
| array_product() | 计算数组中所有值的乘积。 |
| array_push() | 将一个或多个元素插入数组的末尾(入栈)。 |
| array_rand() | 从数组中随机选出一个或多个元素,返回键名。 |
| array_reduce() | 通过使用用户自定义函数,迭代地将数组简化为一个字符串,并返回。 |
| array_replace() | 使用后面数组的值替换第一个数组的值。 |
| array_replace_recursive() | 递归地使用后面数组的值替换第一个数组的值。 |
| array_reverse() | 将原数组中的元素顺序翻转,创建新的数组并返回。 |
| array_search() | 在数组中搜索给定的值,如果成功则返回相应的键名。 |
| array_shift() | 删除数组中的第一个元素,并返回被删除元素的值。 |
| array_slice() | 返回数组中的选定部分。 |
| array_splice() | 把数组中的指定元素去掉并用其它值取代。 |
| array_sum() | 返回数组中所有值的和。 |
| array_udiff() | 比较数组,返回两个数组的差集(只比较键值,使用一个用户自定义的键名比较函数)。 |
| array_udiff_assoc() | 比较数组,返回两个数组的差集(比较键名和键值,使用内建函数比较键名,使用用户自定义函数比较键值)。 |
| array_udiff_uassoc() | 比较数组,返回两个数组的差集(比较键名和键值,使用两个用户自定义的键名比较函数)。 |
| array_uintersect() | 比较数组,返回两个数组的交集(只比较键值,使用一个用户自定义的键名比较函数)。 |
| array_uintersect_assoc() | 比较数组,返回两个数组的交集(比较键名和键值,使用内建函数比较键名,使用用户自定义函数比较键值)。 |
| array_uintersect_uassoc() | 比较数组,返回两个数组的交集(比较键名和键值,使用两个用户自定义的键名比较函数)。 |
| array_unique() | 删除数组中重复的值。 |
| array_unshift() | 在数组开头插入一个或多个元素。 |
| array_values() | 返回数组中所有的值。 |
| array_walk() | 对数组中的每个成员应用用户函数。 |
| array_walk_recursive() | 对数组中的每个成员递归地应用用户函数。 |
| arsort() | 对关联数组按照键值进行降序排序。 |
| asort() | 对关联数组按照键值进行升序排序。 |
| compact() | 创建一个包含变量名和它们的值的数组。 |
| count() | 返回数组中元素的数目。 |
| current() | 返回数组中的当前元素。 |
| each() | 返回数组中当前的键/值对。 |
| end() | 将数组的内部指针指向最后一个元素。 |
| extract() | 从数组中将变量导入到当前的符号表。 |
| in_array() | 检查数组中是否存在指定的值。 |
| key() | 从关联数组中取得键名。 |
| krsort() | 对关联数组按照键名降序排序。 |
| ksort() | 对关联数组按照键名升序排序。 |
| list() | 把数组中的值赋给一些数组变量。 |
| natcasesort() | 用"自然排序"算法对数组进行不区分大小写字母的排序。 |
| natsort() | 用"自然排序"算法对数组排序。 |
| next() | 将数组中的内部指针向后移动一位。 |
| pos() | current() 的别名。 |
| prev() | 将数组的内部指针倒回一位。 |
| range() | 创建一个包含指定范围的元素的数组。 |
| reset() | 将数组的内部指针指向第一个元素。 |
| rsort() | 对数值数组进行降序排序。 |
| shuffle() | 把数组中的元素按随机顺序重新排列。 |
| sizeof() | count() 的别名。 |
| sort() | 对数值数组进行升序排序。 |
| uasort() | 使用用户自定义的比较函数对数组中的键值进行排序。 |
| uksort() | 使用用户自定义的比较函数对数组中的键名进行排序。 |
| usort() | 使用用户自定义的比较函数对数组进行排序。 |
php5 数据类型的更多相关文章
- PHP学习总结
<?php /* PHP简介: PHP是什么:PHP是一种创建动态交互性站点的强有力的服务器端脚步语言 PHP代表Hypertext Preprocessor PHP是一种使用广泛的开源的脚本语 ...
- php基础知识总结
PHP 代表 PHP: Hypertext Preprocessor PHP 文件可包含文本.HTML.JavaScript代码和 PHP 代码 PHP 代码在服务器上执行,结果以纯 HTML 形式返 ...
- PHP 基础知识总结
PHP 代表 PHP: Hypertext Preprocessor PHP 文件可包含文本.HTML.JavaScript代码和 PHP 代码 PHP 代码在服务器上执行,结果以纯 HTML 形式返 ...
- PHP知识点总结2
PHP5数据类型 String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值). 字符串 你可 ...
- PHP学习之[第03讲]PHP5.4 语法、常量、变量、数据类型详解
1.<?php echo "Hello World"; ?> 2.//注释1,#注释2,/* 注释3 */ 3.系统常量: __FILE__默认常量,是指PHP程序文件 ...
- PHP变量和数据类型
编程语言可以分为三大类 1. 静态类型语言,比如:C/Java等,在静态语言类型中,类型的检查是在编译期(compile-time)确定的. 2. 动态语言类型,比如:PHP,python等各种脚本语 ...
- 深入理解PHP内核(十)变量及数据类型-类型提示的实现
原文链接:http://www.orlion.ga/253/ PHP是弱类型语言,向方法传递参数时也并不严格检查数据类型.不过有时候需要判断传递到方法中的参数,为此PHP中提供了一些函数来判断数据的类 ...
- 深入理解PHP内核(五)变量及数据类型-变量的结构和类型
原文链接:http://www.orlion.ga/238/ 编程语言的类型可以分为强类型和弱类型两种,PHP是弱类型语言,但是C语言是强类型语言.在官网PHP实现内部,所有变量使用同一种数据结构(z ...
- php5调用web service
工作中需要用php调用web service接口,对php不熟,上网搜搜,发现关于用php调用web service的文章也不多,不少还是php4里用nusoap这个模块调用的方法,其实php5里已经 ...
随机推荐
- 附加数据库后无法创建发布,error 2812 解决
日前,由于业务需要,我要把一个数据库直接迁移到新的实例上 用的方法比较古老,就是直接停旧服务器,将数据文件复制到新服务器上,附加数据库 当然这个附加没有什么可说的了,但是在附加后需要将原来库上的发布重 ...
- Window下python2.7+Apache+mod_wsgi+Django服务器配置
前言:试着使用python搭建一个网页,分别在windows下和linux下,本篇文章主要讲解Window下python+Apache+mod_wsgi+Django服务器配置过程中遇见的问题和解决方 ...
- EF Load之详讲
参考 Loading Related Entities with Entity Framework - A Beginner's Primer
- 如何保证ArrayList线程安全
一.继承Arraylist,然后重写或按需求编写自己的方法,这些方法要写成synchronized,在这些synchronized的方法中调用ArrayList的方法. 二:使用Collectio ...
- python高级之生成器&迭代器
python高级之生成器&迭代器 本机内容 概念梳理 容器 可迭代对象 迭代器 for循环内部实现 生成器 1.概念梳理 容器(container):多个元素组织在一起的数据结构 可迭代对象( ...
- MySql操作
用C#写了个系统更新的小程序,用到MySql MySQL 5.1参考手册 1.使用MySqlConnection 需要引用dll: MySql.Data.rar 连接数据库 string conStr ...
- iOS下的按钮css去除原生样式
IOS环境下的按钮都是经过美化的,但通常我们在设计web app的时候不需要这些看上去老土的样式,所以,去除这些显得很有必要. 下面这句代码就是重置这些样式的: input[type=button]{ ...
- JS中判断鼠标按键的问题
JS中判断鼠标按键的问题.IE左键是 window.event.button = 1右键是 window.event.button = 2中键是 window.event.button = 4没有按键 ...
- HttpUtility.UrlEncode 和Server.UrlEncode的区别,记录记录,被乱码搞晕头了。。。。。
今天修改原来的站点,有几个session和cookies乱码问题,然后又好好看了一下关于编码这块的内容. 大概是:登录处,用session记录了一点中文内容.然后cookies也记录了一点中文内容,取 ...
- Lua和C++交互详细总结
转自:http://cn.cocos2d-x.org/tutorial/show?id=1474 一.Lua堆栈 要理解Lua和C++交互,首先要理解Lua堆栈. 简单来说,Lua和C/C++语言通信 ...