当前位置:首页>软件介绍>PHP基本语法补充案例 查询:
     
PHP基本语法补充案例

案例1  HTML中嵌入PHP

一、案例描述

1、 考核知识点

PHP注释

2、 练习目标

? 熟悉PHP嵌入到HTML中的语法风格

? 了解HTML注释与PHP注释的区别

3、 需求分析

PHP是嵌入到HTML中的脚本语言,PHP核心程序通过PHP的标记找到需要解析的代码。

我们尝试将PHP的代码放在HTML中的任意位置,看它会不会起作用,再试试HTML的注释能不能注释PHP的标记与代码,PHP的注释能不能注释HTML的代码。

4、 设计思路(实现原理)

1) 创建文件test.php,在里面写一段HTML代码。

2) 在HTML代码中用PHP输出HTML的标签和属性。

3) 用HTML的<!-- -->注释PHP的标记与代码。

4) 试试能不能用PHP注释HTML的代码。

二、案例实现

1、创建文件test.php,在里面写一段HTML代码,代码如下:

<html>

<body>

<h1>这是一个案例</h1>

</body>

</html>

2、在HTML代码中用PHP输出HTML的标签和属性,代码如下:

<html>

<body>

<h1>这是一个案例</h1>

<font color="<?php echo 'red';?>">这是一段文字<?php echo '</font>';?><br>

</body>

</html>

3、将PHP的代码放到HTML的注释中,代码如下:

<html>

<body>

<h1>这是一个案例</h1>

<font color="<?php echo 'red';?>">这是一段文字<?php echo '</font>';?><br>

<!-- <?php echo '此句话使用PHP输出'; ?> -->

</body>

</html>

4、用PHP注释HTML的代码,代码如下:

<html>

<body>

<h1>这是一个案例</h1>

<font color="<?php echo 'red';?>">这是一段文字<?php echo '</font>';?><br>

<!-- <?php echo '此句话使用PHP输出'; ?> -->

<?php /* ?><b>此句话被注释。</b><?php */ ?>

</body>

</html>

三、案例总结

1、PHP代码可以嵌入到HTML代码中的任何位置,包括注释里。

2、被HTML注释起来的PHP代码仍然会执行。

3、PHP可以分成两段标记来注释HTML的代码。

案例2  交换两个变量的值

一、案例描述

1、 考核知识点

变量的定义

2、 练习目标

? 掌握变量的定义与使用

? 熟悉变量的运用

3、 需求分析

变量是指在程序执行的过程中其值是可以变化的,通过本案例可以充分感受到变量在程序中的所用。

假设有变量$a和变量$b,如何将两个变量的值交换?假设变量$a的值为10,变量$b的值为20,则交换后,变量$a的值为20,变量$b的值为10。

4、 设计思路(实现原理)

1)定义一个变量$a,值为10,定义一个变量$b,值为20。

2)定义第三个变量$temp,并把$a的值赋给它。

3)将变量$b的值赋给$a,再把变量$temp的值赋给$b。

二、案例实现

1、编写程序,代码如下:

<?php

$a = 10;

$b = 20;

echo '变量a='.$a;

echo '<br>变量b='.$b;

echo '<br>--交换--<br>';

$temp = $a;

$a = $b;

$b = $temp;

echo '变量a='.$a;

echo '<br>变量b='.$b;

三、案例总结

当两个变量之间需要交换值的时候,可以利用第三个变量来临时存储其中一个的值。

案例3  单引号与双引号

一、案例描述

1、 考核知识点

PHP的数据类型

2、 练习目标

? 掌握单引号与双引号字符串

? 掌握字符串中的转义字符

3、 需求分析

分别利用单引号和双引号字符串,结合常用转义字符,将下列文字输出在网页上:

1、"Why doesn't "this" work?"

2、c: etwork ables

3、变量{$a}的值为”abc”

4、101BCD

4、 设计思路(实现原理)

1)用单引号字符串输出时,将字符串中的单引号转义。

2)用双引号字符串输出时,需要避免某些字符被自动转义。

3)当字符串最后一个字符是“”时,为了防止结束引号被转义,应先将“”转义。

4)当双引号字符串中有“$”时,为了防止转义成变量,应先将“$”转义。

二、案例实现

1、用单引号输出,代码如下:

<?php

echo '"Why doesn't "this" work?"';

echo '<br>';

echo 'c: etwork ables';

echo '<br>';

echo '变量{$a}的值为"abc"';

echo '<br>';

echo '101BCD';

echo '<br>';

2、用双引号输出,代码如下:

<?php

echo ""Why doesn't "this" work?"";

echo '<br>';

echo "c: etwork ables";

echo '<br>';

echo "变量{$a}的值为"abc"";

echo '<br>';

echo "101BCD";

三、案例总结

1、单引号字符串处理速度快,只解析转义单引号自身的转义字符。

2、双引号字符串功能强大,可以同时解析转义字符、变量和ASCII码。

案例4  可变变量延伸

一、案例描述

1、 考核知识点

可变变量

2、 练习目标

? 掌握可变变量的用法

? 掌握可变变量的使用细节

3、 需求分析

可变变量是一种特殊的变量,它的名称不是事先定义好的,而是可以动态地设置与使用。

通过本案例可以使我们了解可变变量的延伸用法,即多重$符号、大括号{}的使用。

4、 设计思路(实现原理)

1)定义两个变量,一个变量的值是另一个变量的变量名。

2)定义两个变量,其中一个变量的值是另一个变量的变量名的一部分。

二、案例实现

1、编写程序实现多重$符号的可变变量,代码如下:

<?php

$hello = 'world';

$world = 'hello';

echo $world;

echo $$world;

echo $$$world;

echo $$$$world;

echo $$$$$world;

echo $$$$$$world;

echo $$$$$$$world;

echo $$$$$$$$world;

2、编程实现在可变变量中使用{}大括号,代码如下:

<?php

$helloworld = 'ok';

$php = 'world';

echo ${"hello$php"};

运行程序,结果如下图所示:

三、案例总结

1、普通变量可以作为一个可变变量的变量名。

2、可变变量可以加大括号“{}”,在大括号中可以写双引号字符串。

案例5  自动类型转换细节

一、案例描述

1、 考核知识点

自动类型转换

2、 练习目标

? 了解自动类型转换的细节

3、 需求分析

PHP是一种弱类型语言,在不同类型的数据进行混合运算时,会自动进行类型转换。

通过本案例可以了解自动类型转换带来的一些细节上的问题,在编写程序时应该注意的地方。

4、 设计思路(实现原理)

1)验证当字符串类型和数值类型比较时,结果如何。

2)验证当逻辑性与数值型比较时,结果如何。

3)验证当数值型与字符串型运算时,结果如何。

二、案例实现

1、编写程序,代码如下:

$foo = "0";

if(is_string($foo)){

echo '$foo是字符串型,值为:'.$foo.'<hr>';

}

$foo += 2;

if(is_int($foo)){

echo '$foo是整型,值为:'.$foo.'<hr>';

}

$foo = $foo + 1.3;

if(is_float($foo)){

echo '$foo是浮点型,值为:'.$foo.'<hr>';

}

$foo = 5 + "10Number";

if(is_int($foo)){

echo '$foo是整数型,值为,值为:'.$foo.'<hr>';

}

$a = 10;

$str = "$a";

if(is_string($str)){

echo '$str是字符串型,值为:'.$str.'<hr>';

}

if('ABC'==0){

echo '转换结果为true<hr>';

}

if('ABC'==true){

echo '转换结果为true<hr>';

}

if(false==0){

echo '转换结果为true<hr>';

}

if(0){

echo '转换结果为true<hr>';

}else{

echo '转换结果为false<hr>';

}

三、案例总结

1、自动类型转换虽然给编写程序带来了方便,但是其中的细节一定需要注意。

2、如果需要忽略自动类型转换比较时,可以使用“===”和“!==”,将值与类型同时进行比较。

案例6  计算圆的周长和面积

一、案例描述

1、 考核知识点

算术运算符

2、 练习目标

? 掌握算术运算符的使用方法

? 熟悉常量的使用场合

3、 需求分析

算术运算符是处理四则运算的符号,通过本案例学会如何用计算机编程的思路解决数学问题。

编写程序:已知圆的半径,求圆的周长和面积(圆周率约等于3.14,假设圆的半径为15)。

4、 设计思路(实现原理)

1)圆的周长计算公式:2乘以半径乘以圆周率。

2)圆的面积计算公式:圆周率乘以半径的平方。

3)定义常量PI,值为3.14。

4)定义半径为变量,值为15。

5)根据公式计算出结果。

二、案例实现

1、编写程序,代码如下

<?php

define('PI',3.14);  //圆周率定义为常量

$radius = 15;        //圆半径

$area = PI * $radius * $radius;  //计算面积

$length = 2 * PI * $radius;      //计算周长

echo '圆的周长为:'.$length;

echo '<br>圆的面积为:'.$area;

运行程序,结果如下图所示:

三、案例总结

1、运用算术运算符可以帮助我们解决现实中的数学问题。

2、出于良好的编程习惯,我们将程序中一些不会发生改变的值定义为常量。

案例7  逻辑运算符短路问题

一、案例描述

1、 考核知识点

逻辑运算符

2、 练习目标

? 了解逻辑运算符 && 与 || 中的短路问题

? 了解逻辑运算符 or 的使用场合

3、 需求分析

通过本案例了解逻辑运算符的使用细节。

使用&&,如果左边的判断结果为false,右边的操作将不会被执行。当使用||时,如果左边的判断结果为true,右边的操作将不会被执行。

4、 设计思路(实现原理)

1)定义$a=3,执行“(1==2) && $a=6;”这行代码后,$a的值是多少?

2)定义$a=3,执行“(1==2) || $a=6;”这行代码后,$a的值是多少?

二、案例实现

1、编写程序,代码如下:

<?php

$a=3;

(1==2) && $a=6;  //左边结果为false,则右边$a=6不会执行。

echo $a;

echo '<hr>';

$a=3;

(1==2) || $a=6;  //左边结果为false,则执行右边的操作。

echo $a;

运行程序,结果如下图所示:

三、案例总结

逻辑运算符具有“先判断左边的结果为真,才执行右边的操作”,或者“如果左边的结果为假,则执行右边的操作”的技巧性用法。

案例8  输出循环案例

一、案例描述

1、 考核知识点

循环结构语句

2、 练习目标

? 掌握循环语句的使用

? 熟悉多重循环语句的应用

3、 需求分析

利用循环语句,实现在网页中打印用星号“*”组成的实心菱形:

*

***

*****

***

*

4、 设计思路(实现原理)

1) 定义一个变量,控制循环的行数。

2) 循环菱形的上半部分中的空格

3) 循环菱形的上半部分中的星号

4) 循环菱形下半部分中的空格

5) 循环菱形下半部分中的星号

二、案例实现

1、构建for循环,循环菱形上半部分,代码如下:

$a=5;//控制循环的行数

//循环菱形的上半部分

for($i=1;$i<=$a;++$i){

//$b代表空格数目

for($b=1;$b<=$a-$i;++$b){

//控制输出的空格数

echo " ";

}

//$c 代表星号数目

for($c=1;$c<=($i-1)*2+1;++$c){

//控制输出的*数目

echo "*";

}

echo "<br/>";

}

2、构建for循环,循环菱形下半部分,代码如下:

//循环菱形的下半部分

for($i=$a-1;$i>=1;--$i){

//$b代表空格数目

for($b=1;$b<=$a-$i;++$b){

//控制输出的空格数

echo " ";

}

//$c 代表星号数目

for($c=1;$c<=($i-1)*2+1;++$c){

echo "*";

}

echo "<br/>";

}

运行程序,结果如下图所示:

三、案例总结

1、运用for循环语句,可以输出各种有规律的字符图形。

2、对于双重for循环,外层循环控制行,内层循环控制单行中的每一个字符。

案例9  编程求水仙花数

一、案例描述

1、 考核知识点

循环结构语句

2、 练习目标

? 掌握循环结构语句的应用

? 熟悉循环语句与选择语句的使用结合

3、 需求分析

循环结构可以用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构。

编程求100~999之间所有的水仙花数。水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

提示:使用floor()函数可以舍去一个数值的小数位。如:floor(1.9)的值为1,floor(2.1)的值为2。

4、 设计思路(实现原理)

1)编写一个for循环,$i从100开始,$i小于1000。

2)在循环体中,先提取每个$i的个位、十位、百位上的数字,放到单独的变量中保存。

3)使用if判断,当个位数字、十位数字、百位数字的三次方加在一起等于$i时,将$i输出。

二、案例实现

1、构建for循环,提取三位数中的每个位上的数字,代码如下:

<?php

for($i=100;$i<1000;++$i){

$hundreds=floor($i/100);//分解出百位

$tens=floor($i/10)%10;//分解出十位

$ones=floor($i%10);//分解出个位

}

2、通过if判断,将符合条件的结果输出,代码如下:

<?php

for($i=100;$i<1000;++$i){

$hundreds=floor($i/100);//分解出百位

$tens=floor($i/10)%10;//分解出十位

$ones=floor($i%10);//分解出个位

if($hundreds*$hundreds*$hundreds+$tens*$tens*$tens+$ones*$ones*$ones==$i){

echo $i." ";

}

}

三、案例总结

1、for循环语句是最常用的循环语句,一般用在循环次数已知的情况下。for循环语句的语法格式如下:

for(初始化表达式; 循环条件; 操作表达式){

执行语句

………

}

2、循环语句结合选择语句,可以从一个大范围内中找出我们需要的结果。

例10  计算红白黑球个数

一、案例描述

1、 考核知识点

循环结构语句

2、 练习目标

? 掌握循环语句的使用

? 熟悉程序中的逻辑与算法思想

3、 需求分析

利用循环结构,编程计算:有红、白、黑三种球若干个,其中红、白球共25个,白、黑球共31个,红、黑球共28个,求这三种球各多少个?(尝试使用两种方法来实现)

4、 设计思路(实现原理)

1) 使用穷举法,思路:红+白=25,白+黑=31,红+黑=28

2) 分析数据间的关系,思路:25-红=白,28-红=黑,白+黑=31

二、案例实现

1、穷举法,代码如下:

<?php

for($r=1;$r<=25;++$r){

for($b=1;$b<28;++$b){

for($w=1;$w<25;++$w){

if($r+$w==25 && $w+$b==31 && $r+$b==28){

echo "白球:$w 黑球:$b 红球:$r";

}

}

}

}

2、将程序改进后,代码如下:

//红、白球共25个,白球最少有1个,那么红球最多有24个。

for($r=1;$r<=24;++$r){

$w=25-$r;

$b=28-$r;

if($w+$b==31){

echo "白球:$w 黑球:$b 红球:$r";

}

}

三、案例总结

1、运用for循环,能够在海量的可能性中找出我们需要的答案。

2、在编写程序时,注意编程技巧,让程序执行的更加高效。

案例11  解决百钱百鸡问题

一、案例描述

1、 考核知识点

循环结构语句

2、 练习目标

? 掌握循环结构语句的应用

3、 需求分析

编程解决以下问题,并尝试进行算法上的优化:

公鸡5文钱1只,母鸡3文钱1只,小鸡1文钱买3只,现在用100文钱共买了100只鸡,问:在这100只鸡中,公鸡、母鸡和小鸡各是多少只?(设每种至少一只)

4、 设计思路(实现原理)

1)穷举法:假设每种鸡的最大个数为100,则使用三层的循环,来进行运算。

2)改进算法:公鸡5文钱买一只,所以最多能买20只,同理母鸡最多能买33只。

二、案例实现

1、穷举法,代码如下:

<?php

for($mj=1;$mj<100;++$mj){

for($gj=1;$gj<100;++$gj){

for($xj=1;$xj<100;++$xj){

if(($gj+$mj+$xj == 100) && ($gj*5+$mj*3+$xj/3==100)){

echo "公鸡:$gj 母鸡:$mj 小鸡:$xj<br>";   

}

}

}

}

2、将程序改进后,代码如下:

<?php

for($mj=1;$mj<33;++$mj){

for($gj=1;$gj<20;++$gj){

$xj=100-$mj-$gj;

if($gj*5+$mj*3+$xj/3==100){

echo "公鸡:$gj 母鸡:$mj 小鸡:$xj<br>";

}

}

}

三、案例总结

1、运用for循环,能够在海量的可能性中找出我们需要的答案。

2、在编写程序时,注意编程技巧,让程序执行的更加高效。

案例12  输出隔行换色的表格

一、案例描述

1、 考核知识点

循环结构语句

2、 练习目标

? 掌握循环结构语句的应用

? 熟练将PHP与HTML的代码结合使用。

3、 需求分析

PHP可以嵌入到HTML结构中使用,通过本案例练习如何运用PHP程序处理HTML代码。

使用PHP输出一个10行两列的HTML表格,同时将奇数行的背景色设置为绿色。

4、 设计思路(实现原理)

1)编写HTML代码,写出一个简单的表格。

2)在table标签内部编写for循环,$i初始值为1,$i小于等于10。

3)在循环体中输出行<tr></tr>,同时判断$i为奇数时输出<tr bgcolor=”green” >

二、案例实现

1、编写一个HTML的表格,代码如下:

<table border=”1”>

<tr>

<td></td>

<td></td>

</tr>

</table>

2、在表格中加入PHP代码,代码如下:

<table border="1">

<?php

for($i=1; $i<=10; ++$i){

if($i%2==0){

echo '<tr><td>偶数行</td>';

}else{

echo '<tr bgcolor="green" ><td>奇数行</td>';

}

echo '<td>'.$i.'</td></tr>';

}

?>

</table>

三、案例总结

1、可以运用PHP帮助我们生成重复性的HTML代码。

2、通过if条件判断,可以将程序分情况来执行。



PHP常用代码 基于php的万年历接口调用代码实例
PHP培训之高级工程师应具备哪些条件 PHP底层的运行机制-PHP从启动到停止的整个生命周期
深度探讨PHP之性能怎样才能成为PHP高手
PHP用户注册与登录php调用linux计划任务
php里session的用法php在百度的发展历程
php中关于引用(&)详解 PHP正则表达式的几则使用技巧
细说PHP模板引擎windows下PHP运行环境安装详解
js与php调用PHP与ASP.NET的比较
信息发布:广州名易软件有限公司 http://www.myidp.net
  • 名易软件销售服务
  • 名易软件销售服务
  • 名易软件技术服务

  • PHP基本语法补充案例