PHP基础(2)

运算符

 

PHP 算数运算符

运算符

名称

例子

结果

+

加法

$x + $y

$x 与 $y 求和

-

减法

$x - $y

$x 与 $y 的差数

*

乘法

$x * $y

$x 与 $y 的乘积

/

除法

$x / $y

$x 与 $y 的商数

%

取模

$x % $y

$x 除 $y 的余数

 

实例:

 

$x=17;

$y=8;

echo($x+$y);

echo"<br>";

echo($x-$y);

echo"<br>";

echo($y*$y);

echo"<br>";

echo($x/$y);

echo"<br>";

echo($x%$y);

echo"<br>";

 

 

PHP 赋值运算符

PHP 赋值运算符用于向变量写值。

PHP 中基础的赋值运算符是 "="。这意味着右侧赋值表达式会为左侧运算数设置值。

赋值

等同于

描述

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

模数

下例展示了使用不同赋值运算符的不同结果:

$x=17;

echo$x;

echo"<br>";

 

$y=17;

$y+=8;

echo$y;

echo"<br>";

 

$i=17;

$i-=8;

echo$i;

echo"<br>";

 

$q=17;

$q*=8;

echo$q;

echo"<br>";

 

$w=17;

$w/=8;

echo$w;

echo"<br>";

 

$e=17;

$e%=8;

echo$e;

echo"<br>";

 

 

PHP 字符串运算符

运算符

名称

例子

结果

.

串接

$txt1 = "Hello" $txt2 = $txt1 . " world!"

现在 $txt2 包含 "Hello world!"

.=

串接赋值

$txt1 = "Hello" $txt1 .= " world!"

现在 $txt1 包含 "Hello world!"

下例展示了使用字符串运算符的结果:

$a="hallo";

$b=$a."world";

echo$b;

echo"<br>";

 

$x="hallo";

$x.="world";

echo$x;

 

PHP 递增/递减运算符

运算符

名称

描述

++$x

前递增

$x 加一递增,然后返回 $x

$x++

后递增

返回 $x,然后 $x 加一递增

--$x

前递减

$x 减一递减,然后返回 $x

$x--

后递减

返回 $x,然后 $x 减一递减

下例展示了使用不同递增/递减运算符的不同结果:

$x=17;

echo++$x;

echo"<br>";

 

$y=17;

echo$y++;

echo"<br>";

 

$q=17;

echo--$q;

echo"<br>";

 

$w=17;

echo$w--;

echo"<br>";

 

 

PHP 比较运算符

PHP 比较运算符用于比较两个值(数字或字符串):

运算符

名称

例子

结果

==

等于

$x == $y

如果 $x 等于 $y,则返回 true。

===

全等(完全相同)

$x === $y

如果 $x 等于 $y,且它们类型相同,则返回 true。

!=

不等于

$x != $y

如果 $x 不等于 $y,则返回 true。

<>

不等于

$x <> $y

如果 $x 不等于 $y,则返回 true。

!==

不全等(完全不同)

$x !== $y

如果 $x 不等于 $y,或它们类型不相同,则返回 true。

>

大于

$x > $y

如果 $x 大于 $y,则返回 true。

<

小于

$x < $y

如果 $x 小于 $y,则返回 true。

>=

大于或等于

$x >= $y

如果 $x 大于或者等于 $y,则返回 true.

<=

小于或等于

$x <= $y

如果 $x 小于或者等于 $y,则返回 true。

下例展示了使用某些比较运算符的不同结果:

$x=17;

$y="17";

 

var_dump($x==$y);

echo"<br>";

var_dump($x===$y);

echo"<br>";

var_dump($x!=$y);

echo"<br>";

var_dump($x<>$y);

echo"<br>";

var_dump($x!==$y);

echo"<br>";

 

$q=17;

$w=5;

 

var_dump($q<$w);

echo"<br>";

var_dump($q>$w);

 

结果:

t\f\f\f\t\f\t

 

 

PHP 逻辑运算符

运算符

名称

例子

结果

and

$x and $y

如果 $x 和 $y 都为 true,则返回 true。

or

$x or $y

如果 $x 和 $y 至少有一个为 true,则返回 true。

xor

异或

$x xor $y

如果 $x 和 $y 有且仅有一个为 true,则返回 true。

&&

$x && $y

如果 $x 和 $y 都为 true,则返回 true。

||

$x || $y

如果 $x 和 $y 至少有一个为 true,则返回 true。

!

!$x

如果 $x 不为 true,则返回 true。

 

PHP 数组运算符

PHP 数组运算符用于比较数组:

运算符

名称

例子

结果

+

联合

$x + $y

$x 和 $y 的联合(但不覆盖重复的键)

==

相等

$x == $y

如果 $x 和 $y 拥有相同的键/值对,则返回 true。

===

全等

$x === $y

如果 $x 和 $y 拥有相同的键/值对,且顺序相同类型相同,则返回 true。

!=

不相等

$x != $y

如果 $x 不等于 $y,则返回 true。

<>

不相等

$x <> $y

如果 $x 不等于 $y,则返回 true。

!==

不全等

$x !== $y

如果 $x 与 $y 完全不同,则返回 true。

 

下例展示了使用不同数组运算符的不同结果:

$x=array("a"=>"apple","b"=>"banana");

$y=array("c"=>"orange","d"=>"peach");

$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);

 

输出结果:

D:\PHP\project\test\index.php:372:
array (size=4)
  'a' => string 'apple' (length=5)
  'b' => string 'banana' (length=6)
  'c' => string 'orange' (length=6)
  'd' => string 'peach' (length=5)

D:\PHP\project\test\index.php:373:boolean false

D:\PHP\project\test\index.php:374:boolean false

D:\PHP\project\test\index.php:375:boolean true

D:\PHP\project\test\index.php:376:boolean true

D:\PHP\project\test\index.php:377:boolean true

 

 

PHP 条件语句

在您编写代码时,经常会希望为不同的决定执行不同的动作。您可以在代码中使用条件语句来实现这一点。

在 PHP 中,我们可以使用以下条件语句:

  • if 语句 - 如果指定条件为真,则执行代码
  • if...else 语句 - 如果条件为 true,则执行代码;如果条件为 false,则执行另一端代码
  • if...elseif....else 语句 - 根据两个以上的条件执行不同的代码块
  • switch 语句 - 选择多个代码块之一来执行

 

PHP - if 语句

if 语句用于在指定条件为 true 时执行代码。

语法

if (条件) {
  当条件为 true 时执行的代码;
}

 

实例:

 

$t=date("H");//H涉及高级教程

 

if($t<"20"){

echo"haveniceday";

 

输出结果:

have nice day

 

PHP - if...else 语句

 if....else 语句在条件为 true 时执行代码在条件为 false 时执行另一段代码

 

if (条件) { 条件为 true 时执行的代码; } else { 条件为 false 时执行的代码; }

 

实例:

$t=date("H");

if($t<"20"){

echo"haveniceday";

}else{

echo"havegoodnight";

}

 

PHP - if...elseif....else 语句

语法

if (条件) {
  条件为 true 时执行的代码;
} elseif (condition) {
  条件为 true 时执行的代码;
} else {
  条件为 false 时执行的代码;
}

 

实例:

$t=date("H");

 

if($t<"10"){

echo"greeting";

}elseif($t<"20"){

echo"haveniceday";

}else{

echo"goodnight";

}

 

 

Switch 语句

如果有选择地执行若干代码块之一,使用 Switch 语句。

使用 Switch 语句可以避免冗长的 if..elseif..else 代码块。

语法

switch (expression)
{
case label1:
  expression = label1 时执行的代码 ;
  break; 
case label2:
  expression = label2 时执行的代码 ;
  break;
default:
  表达式的值不等于 label1 及 label2 时执行的代码;
}

 

工作原理:

  1. 对表达式(通常是变量)进行一次计算
  2. 把表达式的值与结构中 case 的值进行比较
  3. 如果存在匹配,则执行与 case 关联的代码
  4. 代码执行后,break 语句阻止代码跳入下一个 case 中继续执行
  5. 如果没有 case 为真,则使用 default 语句

 

实例:

$favfruit="orange";

 

switch($favfruit){

case"apple":

echo"喜欢苹果";

break;

case"banana":

echo"喜欢香蕉";

break;

case"orange":

echo"喜欢橘子";

break;

default:

echo"没什么喜欢的";

}

 

输出结果:喜欢橘子

 

 

PHP 循环

PHP while 循环

PHP while 循环在指定条件为 true 时执行代码块。

在您编写代码时,经常需要反复运行同一代码块。我们可以使用循环来执行这样的任务,而不是在脚本中添加若干几乎相等的代码行。

在 PHP 中,我们有以下循环语句:

  • while - 只要指定条件为真,则循环代码块
  • do...while - 先执行一次代码块,然后只要指定条件为真则重复循环
  • for - 循环代码块指定次数
  • foreach - 遍历数组中的每个元素并循环代码块

 

 

只要指定的条件为真,while 循环就会执行代码块。

 

语法

while (条件为真) {
  要执行的代码;
}

下例首先把变量 $x 设置为 1($x=1)。然后执行 while 循环,只要 $x 小于或等于 5。循环每运行一次,$x 将递增 1:

实例:

$x=1;

 

while($x<=5){

echo"这个数字是:$x<br>";

$x++;

}

输出结果:

这个数字是:1

这个数字是:2

这个数字是:3

这个数字是:4

这个数字是:5

 

 

PHP do...while 循环

do...while 循环首先会执行一次代码块,然后检查条件,如果指定条件为真,则重复循环。

语法

do {
  要执行的代码;
} while (条件为真);

下面的例子首先把变量 $x 设置为 1($x=1)。然后,do while 循环输出一段字符串,然后对变量 $x 递增 1。随后对条件进行检查($x 是否小于或等于 5)。只要 $x 小于或等于 5,循环将会继续运行:

实例

$x=1;

 

do{

echo"这个数字是:$x<br>";

$x++;

}while($x<=5);

 

输出结果:

这个数字是:1

这个数字是:2

这个数字是:3

这个数字是:4

这个数字是:5

 

请注意,do while 循环只在执行循环内的语句之后才对条件进行测试。这意味着 do while 循环至少会执行一次语句,即使条件测试在第一次就失败了。

下面的例子把 $x 设置为 6,然后运行循环,随后对条件进行检查

 

$x=6;

 

do{

echo"这个数字是:$x<br>";

$x++;

}while($x<=5);

 

输出结果:这个数字是:6

 

 

PHP for 循环

如果已经提前确定脚本运行的次数,可以使用 for 循环。

语法

for (init counter; test counter; increment counter) {
  code to be executed;
}

参数:

  • init counter:初始化循环计数器的值
  • test counter:: 评估每个循环迭代。如果值为 TRUE,继续循环。如果它的值为 FALSE,循环结束。
  • increment counter:增加循环计数器的值

下面的例子显示了从 0 到 10 的数字:

for($x=0;$x<10;$x++){

echo"数字是:$x<br>";

}

输出结果:

数字是:0

数字是:1

数字是:2

数字是:3

数字是:4

数字是:5

数字是:6

数字是:7

数字是:8

数字是:9

 

PHP foreach 循环

foreach 循环只适用于数组,并用于遍历数组中的每个键/值对。

 

 

语法

foreach ($array as $value) {
  code to be executed;
}

每进行一次循环迭代,当前数组元素的值就会被赋值给 $value 变量,并且数组指针会逐一地移动,直到到达最后一个数组元素。

下面的例子演示的循环将输出给定数组($colors)的值:

 

$colors=array("rad","green","blue","yellow");

 

foreach($colorsas$value){

echo"$value<br>";

 

输出结果:

rad

green

blue

yellow

 

 

PHP 用户定义函数

除了内建的 PHP 函数,我们可以创建我们自己的函数。

函数是可以在程序中重复使用的语句块。

页面加载时函数不会立即执行。

函数只有在被调用时才会执行。

在 PHP 创建用户定义函数

用户定义的函数声明以单词 "function" 开头:

语法

function functionName() {
  被执行的代码;
}

注释:函数名能够以字母或下划线开头(而非数字)。

注释:函数名对大小写不敏感。

提示:函数名应该能够反映函数所执行的任务。

在下面的例子中,我们创建名为 "functionName()" 的函数。打开的花括号({)指示函数代码的开始,而关闭的花括号(})指示函数的结束。此函数输出 "自定义函数名称"。如需调用该函数,只要使用函数名即可:

 

functionfunctionName(){

echo"自定义函数名称";

}

 

functionName();

 

输出结果:

自定义函数名称

 

PHP 函数参数

可以通过参数向函数传递信息。参数类似变量。

参数被定义在函数名之后,括号内部。您可以添加任意多参数,只要用逗号隔开即可。

下面的例子中的函数有一个参数($fname)。当调用 familyName() 函数时,我们同时要传递一个名字(例如 Bill),这样会输出不同的名字,但是姓氏相同:

 

functionfamilyName($fname){

echo"$fnameZhang.<br>";

}

 

familyName("LI");

familyName("hong");

familyName("xiaomei");

输出结果:

LI Zhang.

hong Zhang.

xiao mei Zhang.

 

下面的例子中的函数有两个参数($fname 和 $year):

functionfamilyName($fname,$year){

echo"$fnameZhang.Bornin$year<br>";

}

 

familyName("LI","1975");

familyName("Hong","1988");

familyName("Tao","1992");

输出结果:

LI Zhang.Born in 1975

Hong Zhang.Born in 1988

Tao Zhang.Born in 1992

 

PHP 默认参数值

下面的例子展示了如何使用默认参数。如果我们调用没有参数的 setHeight() 函数,它的参数会取默认值:

 

functionsetHeight($minhenight=50){

echo"theheightis:$minhenight<br>";

}

 

setHeight(350);

setHeight();//将使用默认值50

setHeight(135);

setHeight(10);

输出结果:

the height is : 350

the height is : 50

the height is : 135

the height is : 10

 

PHP 函数 - 返回值

如需使函数返回值,请使用 return 语句:

 

functionsum($x,$y){

$z=$x+$y;

return$z;

}

 

echo"5+10=".sum(5,10)."<br>";

echo"7+3=".sum(7,3)."<br>";

echo"2+4=".sum(2,4);

输出结果:

5 + 10 = 15

7 + 3 = 10

2 + 4 = 6

 

 

PHP 数组

数组能够在单独的变量名中存储一个或多个值。

实例

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

$cars=array("porsche","BMW","Volvo");

echo"Ilike".$cars[0].",".$cars[1]."and".$cars[2].".";

输出结果:

I like porsche, BMW and Volvo.

 

什么是数组?

数组是特殊的变量,它可以同时保存一个以上的值。

如果您有一个项目列表(例如汽车品牌列表),在单个变量中存储这些品牌名称是这样的:

$cars1="porsche";
$cars2="BMW";
$cars3="Volvo";

不过,假如您希望对变量进行遍历并找出特定的那个值?或者如果您需要存储 300 个汽车品牌,而不是 3 个呢?

解决方法是创建数组!

数组能够在单一变量名中存储许多值,并且您能够通过引用索引号来访问某个值。

在 PHP 中创建数组

在 PHP 中, array() 函数用于创建数组:

array();

在 PHP 中,有三种数组类型:

  • 索引数组 - 带有数字索引的数组
  • 关联数组 - 带有指定键的数组
  • 多维数组 - 包含一个或多个数组的数组

PHP 索引数组

有两种创建索引数组的方法:

索引是自动分配的(索引从 0 开始):

$cars=array("porsche","BMW","Volvo");

或者也可以手动分配索引:

$cars[0]="porsche";
$cars[1]="BMW";
$cars[2]="Volvo";

下面的例子创建名为 $cars 的索引数组,为其分配三个元素,然后输出包含数组值的一段文本:

$cars=array("保时捷","宝马","奥迪");

echo"ilike".$cars[0].",".$cars[1].",".$cars[2]."。";

输出结果:

i like保时捷,宝马,奥迪。

 

获得数组的长度 - count() 函数

count() 函数用于返回数组的长度(元素数):

$cars=array("保时捷","宝马","奥迪");

echocount($cars);

输出结果:3

 

遍历索引数组

如需遍历并输出索引数组的所有值,您可以使用 for 循环,就像这样:

 

$cars=array("保时捷","宝马","奔驰");

$arrlength=count($cars);

 

for($x=1;$x<$arrlength;$x++){

echo$cars[$x];

echo"<br>";

 

}

输出结果:

宝马

奔驰

 

PHP 关联数组

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

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

$age=array("Bill"=>"35","Steve"=>"37","Elon"=>"43");

或者

$age['Bill']="63";

$age['Steve']="56";

$age['Elon']="47";

 

实例:

$age=array("bill"=>"63","steve"=>"56","elon"=>"47");

echo"elonis".$age['elon']."yearsold.";

输出结果:

elon is 47years old.

 

 

遍历关联数组

如需遍历并输出关联数组的所有值,您可以使用 foreach 循环,就像这样:

 

$age=array("bill"=>"63","Steve"=>"56","Elon"=>"47");

 

foreach($ageas$x=>$x_value){

echo"Key=".$x.",value".$x_value;

echo"<br>";

}

输出结果:

Key=bill, value63

Key=Steve, value56

Key=Elon, value47

 

 

感谢w3school.com.cn指导教学

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值