Cong's Blog.

PHP从入门到放弃的第二天

字数统计: 2.4k阅读时长: 9 min
2019/08/05 Share

PHP运算符

比较运算符

x == y 等于 如果 x 等于 y,则返回 true 5==8 返回 false
x === y 绝对等于 如果 x 等于 y,且它们类型相同,则返回 true 5===”5” 返回 false
x != y 不等于 如果 x 不等于 y,则返回 true 5!=8 返回 true
x <> y 不等于 如果 x 不等于 y,则返回 true 5<>8 返回 true
x !== y 绝对不等于 如果 x 不等于 y,或它们类型不相同,则返回 true 5!==”5” 返回 true
x > y 大于 如果 x 大于 y,则返回 true 5>8 返回 false
x < y 小于 如果 x 小于 y,则返回 true 5<8 返回 true
x >= y 大于等于 如果 x 大于或者等于 y,则返回 true 5>=8 返回 false
x <= y 小于等于 如果 x 小于或者等于 y,则返回 true 5<=8 返回 true
下面是一个实例:
"; var_dump($x === $y); echo ""; var_dump($x != $y); echo ""; var_dump($x !== $y); echo ""; $a=50; $b=90; var_dump($a > $b); echo ""; var_dump($a < $b); ?>
运行结果如下:
bool(true)
bool(false)
bool(false)
bool(true)
bool(false)
bool(true)
tips:
1.”==”和”===”的区别:==是值相等,数据类型不相等。===是值和数据类型都相等。
2.特殊符号的值打下判断: null==false==0==[]==’’。
3.类型转换:一个数字和字符串比较,是先把字符串转成数字再比较运算.例如:’111a’转换成数字就是”123” ‘11a11’转换成数字就是
‘11’==’a11’转换成数字就是0 。
4.==和===这个两个比较特殊可以对两个字符串进行比较,还能比较布尔值、空、数组。

算数运算符

与基本的数学计算没有太大差别:”+ - * /“分别是加减乘除。这其中稍微特殊的是模、取反、并置。
模:指的是除法的余数 语法是:x%y。
取反:就是取相反数 。 语法是:-x。
并置:指的是将多个字符串连接 语法是:a.b。
在使用加减乘除时需要注意的是,算术是有优先级的,加括号可以提升运算的优先级。
实例如下:

逻辑运算符

x and y 与 如果 x 和 y 都为 true,则返回 true x=6 y=3 (x < 10 and y > 1) 返回 true
x or y 或 如果 x 和 y 至少有一个为 true,则返回 true x=6 y=3 (x==6 or y==5) 返回 true
x xor y 异或 如果 x 和 y 有且仅有一个为 true,则返回 true x=6 y=3 (x==6 xor y==3) 返回 false
x && y 与 如果 x 和 y 都为 true,则返回 true x=6y=3 (x < 10 && y > 1) 返回 true
x || y 或 如果 x 和 y 至少有一个为 true,则返回 true x=6 y=3 (x==5 || y==5) 返回 false
! x 非 如果 x 不为 true,则返回 true x=6y=3 !(x==y) 返回 true

赋值运算符

x = y x = y 左操作数被设置为右侧表达式的值
x += y x = x + y 加
x -= y x = x - y 减
x *= y x = x * y 乘
x /= y x = x / y 除
x %= y x = x % y 模(除法的余数)
a .= b a = a . b 连接两个字符串

递增递减运算

++ x 预递增 x 加 1,然后返回 x
x ++ 后递增 返回 x,然后 x 加 1
– x 预递减 x 减 1,然后返回 x
x – 后递减 返回 x,然后 x 减 1

三元运算符:

基本语法:(expr1) ? (expr2) : (expr3)
当问号前面为真 返回冒号前面的值 如果?前面的值为假:返回冒号后面的值。

PHP常用函数

1.addslashes()函数
返回在指定的字符前添加反斜杠的字符串 在对 0(NULL)、r(回车)、n(换行)、t(换页)、f(制表符)和 v(垂直制表符)应用 addcslashes() 时要小心。在 PHP 中,\0、\r、\n、\t、\f 和 \v 是预定义的转义序列。
语法: addcslashes(string,characters) string:指的是规定要转义的字符串 characters:指的是规定要转义的字符或字符范围。
实例:
"; echo addcslashes($str,'m')."
"; echo addcslashes($str,'H')."
"; ?>
运行结果:
Welcome to my humble Homepage!
Welco\me to \my hu\mble Ho\mepage!
Welcome to my humble \Homepage!
2.bin2hex()函数
把 ASCII 字符的字符串转换为十六进制值。字符串可通过使用 pack() 函数再转换回去。
语法:bin2hex(string)
实例:
"; echo pack("H*",bin2hex($str)) . ""; ?>
运行结果:
48656c6c6f20776f726c6421
Hello world!
3.crypt()函数
单向的字符串加密,需要知道的是这个加密是不可逆的。
crypt(str,salt) str指的是规定要编码的字符串 salt 用于增加被编码字符数目的字符串,以使编码更加安全。如果未提供 salt 参数,则每次调用该函数时会随机生成一个。
4.explode()函数
使用一个字符串分割另一个字符串,并返回由字符串组成的数组。
语法:explode(separator,string,limit) separator:必需。规定在哪里分割字符串。 string必需。要分割的字符串。
limt: 可选。规定所返回的数组元素的数目。大于 0 - 返回包含最多 limit 个元素的数组;小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组;0 - 会被当做 1, 返回包含一个元素的数组。
实例:

运行结果:
ray ( [0] => www [1] => wobuzuorenle [2] => com )
5.htmllentities()函数
把一些字符转换为 HTML 实体
语法:htmlentities(string,flags,character-set,double_encode) string:必需。规定要转换的字符串。 flags 可选。规定如何处理引号、无效的编码以及使用哪种文档类型。 character-set 可选。一个规定了要使用的字符集的字符串。
double_encode 可选。一个规定了是否编码已存在的 HTML 实体的布尔值。
实例:
"; echo htmlentities($str); ?>
运行结果:
<© W3CSçh°°¦§>.
6.htmlspecialchars()函数
将预定义的字符转化为html实体。
语法: htmlspecialchars(string,flags,character-set,double_encode)
string 必需。规定要转换的字符串。
flags 可选。规定如何处理引号、无效的编码以及使用哪种文档类型。
character-set 可选。一个规定了要使用的字符集的字符串。
double_encode 可选。一个规定了是否编码已存在的 HTML 实体的布尔值。
实例:
bold text."; echo htmlspecialchars($str); ?>
运行结果:
This is some <b>bold</b> text.
预定义的字符是:

 & (和号)成为 &amp;
" (双引号)成为 &quot;
' (单引号)成为 '
< (小于)成为 &lt;
> (大于)成为 &gt;

7.implode()
返回一个由数组元素组合成的字符串即合并字符串
语法:implode(separator,array)
array 必需。要组合为字符串的数组。
separator 可选。规定数组元素之间放置的内容。默认是 “”(空字符串)。
实例:

运行结果:
Hello World! Beautiful Day!
8.str_ireplace()函数
替换字符串中的一些字符(大小写不敏感,不区分大小写);
语法:str_ireplace(find,replace,string,count)
find 必需。规定要查找的值。
replace 必需。规定替换 find 中的值的值。
string 必需。规定被搜索的字符串。
count 可选。一个变量,对替换数进行计数。
tips:
如果搜索的字符串是一个数组,那么它将返回一个数组。
如果搜索的字符串是一个数组,那么它将对数组中的每个元素进行查找和替换。
如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换。
如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用。
9.strchr()
查找字符串第一次出现的地方 区分大小写。
语法:strchr(string,search,before_search);
string 必需。规定被搜索的字符串。
search 必需。规定所搜索的字符串。如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符。
before_search 可选。一个默认值为 “false” 的布尔值。如果设置为 “true”,它将返回 search 参数第一次出现之前的字符串部分。
10.stripslashes()
删除由addslashes()函数添加的
语法:stripcslashes(string)
11.mb_substr()函数
返回字符串的一部分,之前我们学过 substr() 函数,它只针对英文字符,如果要分割的中文文字则需要使用 mb_substr()。
注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。
语法:mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] ) : string

str 必需。从该 string 中提取子字符串。
start 必需。规定在字符串的何处开始。
正数 - 在字符串的指定位置开始
负数 - 在从字符串结尾的指定位置开始
0 - 在字符串中的第一个字符处开始
length 可选。规定要返回的字符串长度。默认是直到字符串的结尾。
正数 - 从 start 参数所在的位置返回
负数 - 从字符串末端返回
encoding 可选。字符编码。如果省略,则使用内部字符编码。
实例:

运行结果:
这是

12.trim()函数
移除字符串两侧的空白字符或其他预定义字符
语法:trim(string,charlist)
string 必需。规定要检查的字符串。
charlist 可选。规定从字符串中删除哪些字符。如果省略该参数,则移除下列所有字符:
“\0” - NULL
“\t” - 制表符
“\n” - 换行
“\x0B” - 垂直制表符
“\r” - 回车
“ “ - 空格
实例:
"; echo trim($str,"Hed!"); ?>
运行结果:
Hello World!
llo Worl

PHP的数据类型转换:

1.强制类型转换:
(int)$a (float)$b (string)$c (bool)$d
2.使用具体类型函数转换
ist(mixed $varname);//(把数组中的值赋给一些变量)像array()一样,这不是真正的函数,而是语言结构。list()用一步操作给一组变量进行赋值
3.使用通用类型转换数据类型

tips:isset()判断一个变量是否定义

CATALOG
  1. 1. PHP运算符
    1. 1.1. 比较运算符
    2. 1.2. 算数运算符
    3. 1.3. 逻辑运算符
    4. 1.4. 赋值运算符
    5. 1.5. 递增递减运算
    6. 1.6. 三元运算符:
  2. 2. PHP常用函数
  3. 3. PHP的数据类型转换: