php运算符 字符串

PHP类型比较

PHP变量的比较主要分为两种,就是
松散比较:使用两个等号(==)比较,只比较值,不比较类型
严格比较:用三个等号(===)比较,都比较

举个例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
if(42 == "42") {
echo '1、值相等';
}

echo PHP_EOL; // 换行符

if(42 === "42") {
echo '2、类型相等';
} else {
echo '3、不相等';
}
?>
输出的结果分别是 值相等 值不相等

接下是PHP的常量

设置常量需要使用define()函数
使用方法如下

1
define("常量的名称","常量的值",(可定义为true也可不写));
1
2
3
4
5
<?php
define("hwg","wg是帅哥");
echo hwg;//输出是wg是帅哥
echo HWG;//无法输出,因为大写未被定义
?>

说明
1.第一个””是name:必选参数,常量名称,即标志符’
2.第二个””是value:必选参数,常量的值。
3最后一个交case_insensitive,可选参数,如果设置为TRUE,该常量则大小写不敏感,默认是大小写敏感的。

  1. (常量名不需要加 $ 修饰符)。

举个例子

1
2
3
4
5
<?php
define("hwg","wg是帅哥",true);
echo hwg;//输出是wg是帅哥
echo HWG;//输出wg是帅哥
?>

最后一点是,常量是全局的,定义完该常量之后只要输出该常量,出来的定义以后的值。

PHP字符串常量

1
2
3
4
<?php
$txt="Hello world!";
echo $txt;
?>

php并置运算符

1
2
3
4
5
6
<?php
$txt1="Hello world!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
//输出Hello world! What a nice day!

PHP strlen()函数
用知道字符串的长度

1
2
3
<?php
echo strlen("Hello world!");
?>

PHP strpos() 函数

定义和用法

strpos() 函数查找字符串在另一字符串中第一次出现的位置。

注释:strpos() 函数对大小写敏感。若没有找到,则返回strpos有两种类型的返回值,一种是整型,一种是bool型。

注释:该函数是二进制安全的。
例子

1
2
3
<?php
echo strops("you are hansom","are");
?>

输出结果是4(计算方法如下:从第一个y为0开始算起,空格也算一个,所以到a之前一共有4个字节)

相关函数:

  • stripos() - 查找字符串在另一字符串中第一次出现的位置(不区分大小写)
  • strripos() - 查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
  • strrpos() - 查找字符串在另一字符串中最后一次出现的位置(区分大小写)

参考链接https://www.w3school.com.cn/php/func_string_strpos.asp

PHP运算符

基本和C中的差不多,我就整理一下和C不一样的吧
第一个是intdiv()函数:该函数返回值为第一个参数除于第二个参数的值并取等(向下取等)
例:

1
2
3
<?php 
var_dump(intdiv(10, 3));
?>

输出的值是int(3)
有一些运算符不太一样
比如不等于的表示方法有<>和!=
绝对等于有===

逻辑运算符:

![X~KPJ$LXMK`4BK1HHQL4RP5](https://raw.githubusercontent.com/Hwwg/myphoto/master/X%7EKPJ%24LXMK%604BK1HHQL4RP5.png)

参考https://www.runoob.com/php/php-operators.html

PHP三元运算符

这个和if else语句有点像,我先聊聊三元运算符
三元运算符的格式(expr1) ? (expr2) : (expr3)
解释:如果条件”expr1”成立,则执行语句”expr2”,否则执行”expr3”

举个例子

1
2
3
4
<?php
$b = 20;
echo $b=19?"yes":"no";
?>

输出结果是no
转换成if语句就是

1
2
3
4
if($b==20){
echo "yes";
}else{
echo"no";}

三元运算符的有点之处在于他很简练,还有更强大的应用,这里放个链接
https://www.php.cn/php-weizijiaocheng-383293.html
举个菜鸟教程的例子

1
2
3
4
5
6
7
8
9
10
<?php
$test = '菜鸟教程';
// 普通写法
$username = isset($test) ? $test : 'nobody';
echo $username, PHP_EOL;

// PHP 5.3+ 版本写法
$username = $test ?: 'nobody';
echo $username, PHP_EOL;//PHP_EOL的意思是一个换行符
?>

在这个代码里面输出的都是菜鸟教程

今天先到这里吧。哈哈哈哈哈

补充一下组合比较符

组合比较运算符:可以轻松实现两个变量的比较,当啊然不仅限于数值类数据的比较
符号是:<=>
语法格式如下:$c=$a<=>$b;
解析一下解析如下:

  • 如果 $a > $b, 则 $c 的值为 1

  • 如果 $a == $b, 则 $c 的值为 0

  • 如果 $a < $b, 则 $c 的值为 -1
    实例

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?php
    // 整型
    echo 1 <=> 1; // 0
    echo 1 <=> 2; // -1
    echo 2 <=> 1; // 1

    // 浮点型
    echo 1.5 <=> 1.5; // 0
    echo 1.5 <=> 2.5; // -1
    echo 2.5 <=> 1.5; // 1

    // 字符串
    echo "a" <=> "a"; // 0
    echo "a" <=> "b"; // -1
    echo "b" <=> "a"; // 1
    ?>
Author

vague huang

Posted on

2020-10-09

Updated on

2020-10-10

Licensed under

Comments