XUEPHP大讲堂之五天学会PHP第二天
经过第一天的学习大家已经掌握了网站通信的基本原理以及开发工具的使用,今天开始学习PHP的一些语法。一、变量变量即,在程序运行时,值经常发生变动的存储器;完全可以把他理解为容器,在PHP中变量的声明很简单... |
经过第一天的学习大家已经掌握了网站通信的基本原理以及开发工具的使用,今天开始学习PHP的一些语法。
一、变量
变量即,在程序运行时,值经常发生变动的存储器;完全可以把他理解为容器,在PHP中变量的声明很简单,甚至不用声明也可以直接使用,因为PHP不像C/C++,其代码都是运行时解析的。
$number = 100;
?>
代码声明了变量$number,同时将值设置为100;
PHP的每行代码结束都是用分号(;)
php变量的格式必须以美元符号($)开头
(=)符号为赋值符号,整体看来就是将100这个常数装入$number
(=)号左边的是变量名,右边是常数值。
常数值可以是字符串也可以是数值
比如:
如果是字符串须前后加上单引号或者双引号,但推荐使用单引号
输出变量到页面
让变量的值显示在网页上其实很简单,使用PHP中的关键字echo即可
在NetBeans输入代码后,F6运行即可看到变量值输出了。
二、逻辑语句
如果开发中需要对数据进行逻辑判断时,比如大小的判断,需要使用if语句,其格式如下:
if (条件表达式)
{
}else
{
}
下面演示数据大小的判断
if关键字在这里的意义是如果条件表达式($number_a > $number_b)的判断成立 时,输出“$number_a大于$number_b”,else 关键字的意义是否则输出“$number_a小于$number_b”。
大家需要注意的是在条件表达式中使用的逻辑判断符号除了大于(>),还有以下符号
(==)等于 if ($number_a== $number_b)
(>=)大于或者等于 if ($number_a >= $number_b)
(<=)小于或者等于 if ($number_a <= $number_b)
(!=)不等于 if ($number_a != $number_b)
如果对逻辑判断语句还不够明了的朋友,可以看下图
设想下面一个场景,用户在网站购买商品时,有一个变量存储了用户的类型,即$i==1时是普通用户,$i==2时VIP用户,还有两个折扣变量存储了折扣的比例即$a = 1.5,$b=9,
如何写出代码让VIP购买时使用9折比例,普通用户购买时使用 1.5的比例?
三:循环语句
设想一个场景,有一个变量$name存储了值’方建翔’,我们要在页面上显示三次,可能有朋友说这样就可以了,
echo用的很好,这的确是一种解决方案,但是要显示1000次呢?由此可见循环的重要性。
用循环来解决上面的问题
注意循环语句的格式
while(条件表达式)
{
}
这看起来跟if的条件表达式一样,当条件表达式($count的值小于3时)就执行循环。
仔细分析这段代码,在开始循环之前定义了一个$count变量且值为0,由于代码是至上而下执行,当执行到while时发现$count的值小于3程序进入循环体,于是第一次输出$name变量值,同时$count值加1,然后再返回while处判断$count是否小于三,依次循环,直到$count不小于3时变终止循环。所以这段代码中 $count = $count + 1;是非常关键的,如果不递增 $count的值,那么这个循环将永远不会结束,成为一个死循环。
四、数组
在讲数组之前可能不得不谈下数据结构的知识,其实数据结构我们可以用更简单的方法来描述,玩过魔兽的朋友都知道一个角色,有名称,还有魔法值,拥有的魔法;假如在PHP用变量实现一个角色所拥有的这些数据的话,显然是不可能的;
再如商品,组成它的完整数据有商品名称,零售价,成本价,利润中心,成本中心,库存等等;如果太抽象的话我们用图来描述一个商品的结构
我们再用表格来展示商品的数据结构
从图中大家可以看出,结构是可以自己定义的,比如商品还有其他的结构:库存、库位、成本中心、利润中心等等,这些结构都可以理解为商品的属性。
属性可根据需要自行增减,所以万物都是由属性组织起来的,不同的只是属性类型和方式。现在试着寻找你身边物品并用属性来描述它。
以后大家会接触到比如红黑,二叉,单链,双链,HASH等等复杂多样的属性结构。在此先掌握简单的结构够用就行了。
继续回到PHP中,如何把现实世界的商品属性用PHP来描述呢,我们用数组就可以搞定了,先看看数组的语句格式。
注意上面使用了特别的符号//,此符号是PHP中的单行注释符,就是使//后的内容不被PHP解释器解析,只作为代码的一种解释而已
数据的定义格式比较简单
$数组名[‘属性’] 其赋值的方式和变量赋值一样
$goods[‘name’] = ‘铅笔’ 除了上面的4个属性外还可以增加一个库存属性
$goods['stock'] = 200; //商品库存量
数组数据的输出
echo $goods;
F6运行代码会看到有如下输出
明显直接用数组名做输出是有问题的,应该直接对数组属性输出,比如输出商品的名称
echo $goods[‘name’];
但有时我们遇到一些未知属性的数组,这样的情况是不知道属性名称的,那这样的数组如何输出呢?
var_dump,用于在开发时对变量以及数组进行输出观察和监视的函数,关于函数的意义我们后面再讲,现在只要知道它如何使用就行。
F6运行后看看效果
可以看到var_dump函数将整个数组的属性和值都输出了。
通过对数组,逻辑语句if和循环语句while的学习,其实可以实现网站中很多的功能了,大家务必掌握它们。
本节掌握重点:
逻辑语句和循环语句
数组的使用
尝试模拟更多复杂逻辑场景进行练习
尝试将现实世界的物体用PHP在数组中实现并输出
(转发请注明转自:学PHP)
- shell学习:文件查找与打印文件列表命令find (2014-04-03 22:39:50)
- 采集音频和摄像头视频并实时H264编码及AAC编码 (2014-04-04 20:39:49)
- 利用Nginx构建负载均衡服务器 (2014-05-05 22:01:01)
- XUEPHP大讲堂之五天学会PHP第一天 (2013-08-04 16:02:58)
- PHP开源项目汇总 (2013-06-13 00:31:15)
- 2013年中国数据库大会PPT (2013-04-24 13:06:08)
- 20个优秀的前端框架 (2013-02-27 09:58:28)
- 8 个最佳的代码片段在线测试工具 (2013-01-15 16:18:16)
- 1楼 瀛?HPER说: 2014-02-03 07:52:56
-
!S!WCRTESTTEXTAREA000000!E!
- 2楼 瀛?HPER说: 2014-02-03 07:53:14
-
!S!WCRTESTINPUT000002<><>%3c%3e!E!
- 3楼 瀛?HPER说: 2014-02-04 20:05:27
-
!S!WCRTESTTEXTAREA000000!E!
- 4楼 Tessie说: 2016-09-09 14:57:43
-
Wonderful story, reckoned we could combine some unrelated innfomatiro, nevertheless seriously really worth taking a search, whoa did a single master about Mid East has got extra problerms as well