if语句
<?php
if(我是程序员)
{
我是程序员中最帅的
}
?>
条件分支:
<?php
//首先设定我的技术全国排名第10
$myrank = 10;
if ($myrank >= 10 )
{
echo '我是个垃圾';
}
?>
if…else语句
<?php
if (我是程序员)
{
程序员中最帅
}
else
{
继续学技术
}
?>
<?php
//首先设定技术排名第10
$myrank = 10;
if ($myrank >= 10)
{
echo '垃圾';
}
else
{
echo '垃圾';
}
?>
elseif语句
原型:
<?php
if (条件1)
{
分支一
}
elseif(条件2)
{
分支二
}
elseif(条件3)
{
分支三
}
eles语句,与其名称表示一样,它是if和else的组合,是多级关系,作用是延伸if语句,可以在原来if表达式的值为FALSE时执行不同的语句。和else不一样的是,当elseif语句中的条件表达式求值为TRUE时才执行其分支语句。
<?php
$a = 10;
$b = 10;
if ($a > $b)
{
echo 'a > b';
}
elseif ($a == $b)
{
echo 'a = b';
}
elseif ($a < $b)
{
echo 'a = b';
}
?>
switch语句
<?php
switch (数值型字符变量)
{
case 变量可能值1:
分支一;
break;
case 变量可能值2:
分支二;
break;
case ... :
...
...
default :
最后分支;
?>
<?php
$i = 1;
switch ($i)
{
case 0:
echo 'i=0';
break;
case 1:
echo 'i=1';
break;
case 2:
echo 'i=2';
break;
default :
echo 'i等于其他数字';
}
?>
while语句
<?php
while (条件)
{
语句
}
?>
<?php
$i = 1;
$num = 0;
while ($i <= 100)
{
$num += $i;
$i++;
}
?>
do…while语句
<?php
do
{
循环执行语句
}
while();
?>
do…while循环中和while循环最为明显的区别是,前者将判断是否继续循环的条件放在后面。也就是说,就算是条件开始就不成立,循环也要被执行一次
<?php
$a = 1;
while ($a > 1)
{
$a--;
}
?>
<?php
$a = 1;
d0
{
$a--;
}
while ($a>1);
?>
for语句
<?php
for(初始化条件; 条件; 条件改变)
{
循环语句;
}
?>
<?php
$num = 0;
for($i = 1; $i <= 100; $i++)
{
$num += $i;
}
?>
foreach语句
foreach循环仅仅用于数组,当试图将其用于其他数组类型或是一个未初始化的变量时,会产生错误。
foreach有两种用法:
<?php
$ary = array{1,2,3,4,5,6};
foreach($ary as $value)
{
echo '值为$value<br>\n'';
}
?>
此段代码中,数组 a r y 包 含 6 个 元 素 , f o r e a c h 将 ary包含6个元素,foreach将 ary包含6个元素,foreach将ary的元素逐个打印,没循环一次就打印一个元素
<?php
$ary = array{1,2,3,4,5,6};
foreach($ary as $key => $value)
{
echo '$key的值为$value<br>\n';
}
?>
不同的地方是$value前面多了" k e y = > " , 意 思 是 将 键 名 赋 给 key => ",意思是将键名赋给 key=>",意思是将键名赋给key,键名是数组中元素的排序号。
异常处理
程序为按期望运行被称为异常,如连接数据库失败等,这就需要异常处理
<?php
try
{
//需要异常处理的代码
}
catch (Exception $s)
{
echo '捕获到异常:' . $s->getMessage();
}
?>
需要进行异常处理的代码都必须放入try代码内,以便捕获可能存在的异常。每一个try至少要有一个与之对应的catch。使用多个catch可以捕获不同的类所产生的异常。当try代码块不在抛出异常或找不到catch所能匹配所抛出的异常时,代码就会在跳转到最后一个catch的后面继续执行。而一旦抛出异常,则try区块中抛出异常代码后面的代码将停止执行。
<?php
try
{
$error = '连接数据失败'; //这里假设连接数据库失败
throw new Exception($error);
//从这里开始,代码将不会被执行
echo '永远都不会执行';
}
catch (Exception $s)
{
echo '捕获到异常:' . $s->getMessage(), '\n';
}
echo '从这里继续执行...;
?>
declare语句
declare用来设定一段代码的执行指令,目前只接收一个指令ticks,这个指令通常用来调试
<?php
//记录时间的函数
function profile($dump == false)
{
static $profile;
if ($dump)
{
$temp = $profile;
unset($profile);
return ($temp);
}
$profil[] = microtime();
}
//注册tick指令处理函数
register_tick_function('profile');
//初始化时间
profile();
//评估的代码,两条低级语句就记录一次时间
declare(tick=2)
{
for ($x = 1; $x < 50; ++$x)
{
echo similar_text(md5($x), md5($x*$x), '<br />;';
}
}
//显示调试函数
print_r(profile (true));
?>
此代码很少使用。。。。。。