PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)

      • 一、PHP常量
      • 二、 PHP字符串变量
      • 三、PHP运算符
      • 四、PHP If…Else 语句
      • 五、PHP Switch 语句
      • 六、PHP 数组
      • 七、PHP 数组排序

一、PHP常量

常量值被定义后,在脚本的其他任何地方都不能被改变。

常量是一个简单值的标识符。该值在脚本中不能改变。
一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。 (常量名不需要加 $ 修饰符)。

注意: 常量在整个脚本中都可以使用。

设置 PHP 常量
设置常量,使用 define() 函数,函数语法如下:

bool define(string $name, mixed $value, [bool $case_insensitive])

该函数有三个参数:

  • name:必选参数,常量名称,即标志符。
  • value:必选参数,常量的值。
  • 可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。

以下实例我们创建一个 区分大小写的常量, 常量值为 “欢迎访问我的主页:https://blog.csdn.net/qq_36595013“:



// 区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com");
echo GREETING;    // 输出 "欢迎访问 Runoob.com"
echo '
'
; echo greeting; // 输出 "greeting" ?>

以下实例我们创建一个 不区分大小写的常量, 常量值为 “欢迎访问 Runoob.com”:



// 不区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com", true);
echo greeting;  // 输出 "欢迎访问 Runoob.com"
?>

常量是全局的

常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用。
以下实例演示了在函数内使用常量,即便常量定义在函数外也可以正常使用常量。


    define("GREETING", "欢迎访问我的主页:https://blog.csdn.net/qq_36595013");

    function myTest() {
        echo GREETING;
    }

    myTest();
?>

二、 PHP字符串变量

字符串变量用于存储并处理文本。
字符串变量用于包含有字符的值。

在创建字符串之后,我们就可以对它进行操作了。您可以直接在函数中使用字符串,或者把它存储在变量中。

在下面的实例中,我们创建一个名为 txt 的字符串变量,并赋值为 “Hello world!” 。然后我们输出 txt 变量的值:


$txt = "Hello World!";
echo $txt;
?>

* 以下是一些常用的操作字符串的函数和运算符。*
PHP 并置运算符
在 PHP 中,只有一个字符串运算符。
并置运算符 (.) 用于把两个字符串值连接起来。
下面的实例演示了如何将两个字符串变量连接在一起:


    $x = "Hello World!";
    $y = "What a nice day!";

    echo $x . $y; //输出为Hello World!What a nice day!
    echo "
"
; echo $x . " " . $y; //输出为 Hello World! What a nice day! ?>

在上面的代码中,我们使用了两次并置运算符。这是由于我们需要在两个字符串之间插入一个空格。

PHP strlen() 函数
有时知道字符串值的长度是很有用的。
strlen() 函数返回字符串的长度(字符数)。

下面的实例返回字符串 “Hello world!” 的长度:


    $x = "Hello My name is WangWei!";
    echo strlen($x);    //25
    echo "
"
; $y = "Hello World!"; echo strlen($y); //12 ?>

提示: strlen() 常常用在循环和其他函数中,因为确定字符串何时结束是很重要的。(例如,在循环中,我们需要在字符串中的最后一个字符之后结束循环。)

PHP strpos() 函数
strpos() 函数用于在字符串内查找一个字符或一段指定的文本。
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。

下面的实例在字符串 “Hello world!” 中查找文本 “world”:


    echo strpos("Hello World!", "World");  //6
?>

注:在上面的实例中,字符串 “world” 的位置是 6。之所以是 6 而不是 7 的原因是,字符串中第一个字符的位置是 0,而不是 1。
更多关于操作字符串的函数:PHP String参考手册

三、PHP运算符

PHP 算术运算符
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第1张图片


    $x = 18;
    $y = 10;

    echo ($x + $y) . "
"
; //28 echo ($x - $y) . "
"
; //8 echo ($x * $y) . "
"
; //180 echo ($x / $y) . "
"
; //1.8 echo ($x % $y) . "
"
; //8 echo -$x; //-18 ?>

PHP7+ 版本新增整除运算符 intdiv()


    $x = 18;
    $y = 10;

    echo ($x + $y) . "
"
; //28 echo ($x - $y) . "
"
; //8 echo ($x * $y) . "
"
; //180 echo ($x / $y) . "
"
; //1.8 echo ($x % $y) . "
"
; //8 echo -$x . "
"
; //-18 echo intdiv($x, $y) . "
"
; //1 echo var_dump(intdiv($x, $y)); //int(1) ?>

PHP 赋值运算符

在 PHP 中,基本的赋值运算符是 “=”。它意味着左操作数被设置为右侧表达式的值。也就是说,”$x = 5” 的值是 5。
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第2张图片
PHP 递增/递减运算符
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第3张图片


    $x = 9;
    echo $x++;  //9
    echo "
"
. $x; //10 echo "
"
; $y = 10; echo ++$y; //11 echo "
"
. $y; //11 echo "
"
; $z = 8; echo $z--; //8 echo "
"
. $z; //7 echo "
"
; $w = 7; echo --$w; //6 echo "
"
. $w; //6 ?>

PHP 比较运算符
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第4张图片


    $x = 100;
    $y = "100";

    var_dump($x == $y); //bool(true)
    echo "
"
; var_dump($x === $y); //bool(false) echo "
"
; var_dump($x != $y); //bool(false) echo "
"
; var_dump($x !== $y); //bool(true) echo "
"
; $z = 100; $w = 110; var_dump($z < $w); //bool(true) echo "
"
; var_dump($z > $w); //bool(false) ?>

PHP 逻辑运算符
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第5张图片


    $x = 12;
    $y = 13;

    echo var_dump(($x < 15) and ($y > 10)); //bool(true)
    echo "
"
; echo var_dump(($x > 15) or ($y < 10)); //bool(false) ?>

PHP 数组运算符
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第6张图片


$x = array("a" => "red", "b" => "green"); 
$y = array("c" => "blue", "d" => "yellow"); 
$z = $x + $y; // $x 和 $y 数组合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>

运行结果:

array(4) {
[“a”]=>
string(3) “red”
[“b”]=>
string(5) “green”
[“c”]=>
string(4) “blue”
[“d”]=>
string(6) “yellow”
}
bool(false)
bool(false)
bool(true)
bool(true)
bool(true)

四、PHP If…Else 语句

PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第7张图片
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第8张图片

 
  $y = date("y"); //18
  $m = date("m"); //06
  $d = date("d"); //24
  echo "今天是".$y."-".$m."-".$d;
  echo "
"
; if($y < 20) { echo "距离2020年还有".(20 - $y)."天"; //2 } ?>

PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第9张图片


    $m = date("m");
    echo $m;  //6

    echo "
"
; if((1 <= $m) && ($m <= 3)) { echo "春天里的".$m."月,"." 你好!"; } else if((4 <= $m) && ($m >=6)) { echo "夏天里的".$m."月,"." 你好!"; } else if((7 <= $m) && ($m <= 9)) { echo "秋天里的".$m."月,"." 你好!"; } else { echo "冬天里的".$m."月,"." 你好!"; } ?>

五、PHP Switch 语句

switch 语句用于根据多个不同条件执行不同动作。

如果您希望有选择地执行若干代码块之一,请使用 switch 语句。
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第10张图片
工作原理:首先对一个简单的表达式 n(通常是变量)进行一次计算。将表达式的值与结构中每个 case 的值进行比较。如果存在匹配,则执行与 case 关联的代码。代码执行后,使用 break 来阻止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。


  $num = rand(1, 5); //返回随机整数
  echo $num;
  echo "
"
; switch($num) { case "1": echo "一枝独秀"; break; case "2": echo "二龙戏珠"; break; case "3": echo "三人行,必有我师"; break; case "4": echo "四通八达"; break; default: echo "五步成诗"; } ?>

六、PHP 数组

数组能够在单个变量中存储多个值:


  $fruits = array("apple", "banana", "mango", "Hami melon");

  echo "I like ".$fruits[0].",  ".$fruits[1]." and ".$fruits[3];
?>

PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第11张图片
这里写图片描述


  $fruits = array("apple", "banana", "mango", "Hami melon");

  echo "I like ".$fruits[0].",  ".$fruits[1]." and ".$fruits[3];
  echo "
"
; $length = count($fruits); echo $length; //4 ?>

遍历数值数组
遍历并打印数值数组中的所有值,可以使用 for 循环,如下所示:


  $fruits = array("apple", "banana", "mango", "Hami melon");

  $length = count($fruits);
  for($i = 0; $i < $length; $i++) {
    echo $fruits[$i];
    echo "
"
; } ?>

PHP 关联数组

关联数组是使用您分配给数组的指定的键的数组。

这里有两种创建关联数组的方法:

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); //数组下标/值对

or

$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43"; 

遍历关联数组
遍历并打印关联数组中的所有值,可以使用 foreach 循环,如下所示:


  $fruits = array("apple"=>"5", "banana"=>"6", "mango"=>"7", "Hami melon"=>"8");
    foreach($fruits as $x=>$x_value) {
        echo "index=".$x. " value=".$x_value."
"
; } ?>

结果:
这里写图片描述
完整的 PHP Array 参考手册
PHP Array 参考手册。

七、PHP 数组排序

数组中的元素可以按字母或数字顺序进行降序或升序排列。
下列 PHP 数组排序函数:
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第12张图片
sort() - 对数组进行升序排列
下面的实例将 $cars 数组中的元素按照字母升序排列:

 
  $fruits = array("mango", "apple", "pear", "banana");

  sort($fruits);
  print_r($fruits);
?>

结果:
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第13张图片
下面的实例将 $numbers 数组中的元素按照数字升序排列:


    $numbers = array(10, 1, 13, 8, 4, 6, 3);

    sort($numbers);
    print_r($numbers);
?>

结果:
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第14张图片
rsort() - 对数组进行降序排列

asort() - 根据数组的值,对数组进行升序排列
arsort() - 根据数组的值,对数组进行降序排列

下面的实例根据数组的值,对关联数组进行升序排列:

    
      $ageOfPeople = array("张三" => "20", "李四" => "14", "王五" => "23");
      asort($ageOfPeople);
      print_r($ageOfPeople);
    ?>

结果:
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第15张图片

ksort() - 根据数组的键,对数组进行升序排列
krsort() - 根据数组的键,对数组进行降序排列

下面的实例根据数组的键,对关联数组进行升序排列:

    
      $ageOfPeople = array("Mary" =>"11","Alice" => "18", "Peter" => "25");
      ksort($ageOfPeople);
      print_r($ageOfPeople);
    ?>

结果:
PHP学习笔记(之 篇二常量、字符串、运算符、数组、if、switch)_第16张图片

你可能感兴趣的:(PHP学习笔记)