admin 管理员组文章数量: 1086019
2024年4月24日发(作者:乱世三义电视剧免费观看达达兔)
维普资讯
歹F放系统照界
跟我学PHP开发
《黼
这一讲主要介绍PHP语言的语法基础,包括基本语法、类型、变量和常量的声
明、运算符、流程控制和PHP中的函数。
第二讲P H P基础
■王海泉路新喜魏力强
基本语法
标记可能比较省力,但是某些
束标记“7>”同样隐含语句的
情况下,可能必须要使用长格 结束。因此,下面的代码是等
1.从HTML中分离
式的标记。比如,在XML或 价的:
PHP语言通常被嵌套在
XHTML中嵌入PHP代码,将
<?php
HTML文件中,被用户访问时, 需要使用<?php...?>形式的
echo’叮his{Satest”:
由服务器来对PHP代码进行
标记以适应XML的标准。
?>
解释和执行,并生成对应的 下面给出了4种标记方式。
HTML代码,从而返回给用户。
1;<?php E,ch。憾是个测试 ¨):々
<?phpecho"l'hisisale默”?>
;i ̄HTML文件当中,PHP的
脚本是由文件中一对特殊的标
2.<?echo(”这是个测试!”):?>
3.注释
记所引起的内容,当服务器的
PHP支持C、C++和Unix
解释器分析一个文件时,对这
可简写为: Shell风格的注释。单行注释仅
些特殊标记内的内容进行处理;
《?=expression?’
仅注释到行末或当前的PH P
而对其它的内容不做任何处理。
代码块,这一点同C++是一致
特殊标记内文件将作为PHP代
3.‘scrlpt Ianguage=”php“’
的,但在使用的时候要小一IL,,不
码被解释器分析执行。这样就
echo 这是个测试}”);
要嵌套C风格的注释。如果注
可以在HTML中方便地嵌入
</script> 一
释大量代码,则可能犯错误。
PHP代码,并且不影响其它的
下例给出了注释的范例:
内容。
4.<%ecl_静(-.这是个测 霞 ):%’
<?php
用来标记PHP代码块的标
echo”输出内容”;II单行注
记共有四套,其中只有两套总 可简写为:
释
是有效,也就是<?php...?>和
《% expression、%》
,.多行
<script language=”php”>...<,
script> ̄另外两套可以在php.
2.指令分隔符
鼍l 降‘j
ini配置文件中开启或关闭。虽 指令分隔方式与C或Perl
echo One FinaITest";襻另一
然短格式的标记和ASP风格的
类似,每个语句由分号格开,结
种单行注释
200 6.
nR
08
OPEN SOURCE WORLD MONTHLY 91
维普资讯
知识
nOwIedge Classroom.警 ……………………………..
责编/国晓平gxp@ccu.com.on美编/庆琨
数据类型
1.简介
PHP支持八种原始类型,
其中四种标量类型有布尔型
¥a; 234;
¥a 1.2e3;
¥arr=array(”foo”=>”bar”。1 2
=,true);
//key可以是integer或string
//value可以是任何值
echo¥arr[’'foo’ //bar
echo¥arr[12】://1
Sa=7E.1O
>
(Boolean)、整型(Integer)、浮 5.字符申
点型(Float,也作Double)和
字符串(String);两种复合类型
有数组(Array)、对象(Object)I
最后是资源(Resou rce)和
NULL两种特殊类型。
同C语言或Java语言不同,
变量的类型通常不是由程序员
设定的。确切地说,变量不需要
事先进行类型的声明,而是由
PHP解释器根据该变量使用的
上下文在运行时决定的。
2.布尔型
布尔型是最简单的类型。
boolean表达了真值,可以为
TRUE或FALSE。
3.整型
一
个integer是集合Z=(.._,
・
2,一1,0,1,2….)中的一个数。
整型值可以用十进制、十
六进制或八进制符号指定,前
面可以加上可选的符号(“一”或
者“+”)。如果用八进制符号,
数字前必须加上…0(零),用
十六进制符号数字前必须加上
“0x”
4.浮点型
浮点数(也叫F I o at s、
Doubles或Real Numbers)可
以用以下任何语法定义:
<?php
92拜救系统鲢
slnng是一系列字符。在PHP
中,字符和字节一 羊,也就是说,
一
共有256种不同字符的可能
性。同时这也说明PHP对Unicode
没有本地支持。可参阅函数
utfS
_
encode0和utf8_decode0以
了解有关Unicode支持。—个字
符串变得非常巨大也没有问题,
PH 给字符串的大/J、强加实
现范围,所以完全宅 自理由担心
长字符串。
指定一个简单字符串的最
简单的方法是用单引号括起
来,同样的也可以使用双引号|
只不过PHP解释器对单引号
中的PHP变量不进行解析。
6.数组
PHP中的数组实际上是一
个有序图。图是一种把values
映射到keys的类型。由于此类
型在很多方面做了优化,因此
可以把它当成真正的数组来使
用,或者列表(矢量)、散列表、
字典、集合、栈、队列,以及更
多可能性。因为可以用另一个
PHP数组作为值,也可以很容
易地模拟树。
用array()语言结构可以新
建一个array。它接受一定数
量、用逗号分隔的“key=>
value”参数对。
<?php
’,
7.对象
PHP还支持对象类型。要
初始化一个对象,用new语句
将对象实例到一个变量中。
<?php
classfoo
{
function doJoo()
{
echo”do something";
'
¥bar=newfoo;
¥bar->do_fooO;
?'
8.资源
,
保
存了到夕陪 餐源的—个引用。资源
是通过专门的函数来建立和使用
的。资源类型是 4引进的。
9.NULL
特殊的NULL值表示一个
变量没有值,NULL类型惟一
可能的值就是N U L L,它是
PHP 4引进的。在下列情况下
一
个变量被认为是NULL:
◆被赋值为NULL;
◆尚未被赋值;
◆被unset0。
维普资讯
歼放系统}}=l=
变量
1.基础
符(名字),如同其名称所暗示 或者动态加载后,或者在编译
的,在脚本执行期间该值不能 时已经包括进去了。
改变。常量默认为大小写敏
PHP中一个美元符号(即
感,按照惯例常量标识符总是
“¥”)后面跟上一个变量名称表 大写的,可以用define()函数
运算符
示一个变量。变量的名称对大
来定义常量。一个常量一旦被 1.算术运算符
小写敏感。
定义,就不能再改变或者取消
算术运算符见表1所示,
定义。常量只能包含标量数据 除号(“/”)总是返回浮点数,
2.预定义变量
(boolean、integer、float和
即使两个运算数是整数(或
PHP提供了大量的预定义 string)。
变量。由于许多变量依赖于运行
由字符串转换成的整数)也
通过指定其名字可取得常
是这样。
的服务器的版本和设置,以及其 量的值,不能在常量前面加上
它因素,所以并没有详细的说明
“¥”符号。如果常量名是动态
2.赋僵运算符
文档。一些预定义变量 ̄ ̄PHP以 的,则可以用函数constant()来
基本的赋值运算符是
“一
,
命令行形式运行时并不生效。
3.变量范围
变量的范围即它定义的上
下文背景。大部分的PHP变量
读取常量的值。用get_defined_
它实际上意味着把右边
constants()可以获得所有已定
表达式的值赋给左运算数。
义的常量列表。
常量和变量有所不同:
常量前没有¥符号I常量只
3.位运算符
位运算符见表2所示。
只有一个单独的范围。这个单 能用deftne()定义,而不能
独的范围跨度同样包含了in— 通过赋值语句;常量不用理会
4.比较运算符
clude和require引入的文件。
变量范围的规则,而在任何地 比较运算符见表3所示。
另外一个条件运算符是 但是,在用户自定义函数中, 方定义和访问。常量一旦定义
一
”运算符,它和C及很多
个局部函数范围将被引入。 就不能被重新定义或者取消定
“?:
其它语言的操作一样。 任何函数内部的变量按缺省情 义;常量的值只能是标量。
况将限制在局部函数范围内。
2.预定义常量
5.错误控制运算符
PHP支持错误控制运算符
常量
1.语法
PHP提供了大量的预定义
常量,不过很多常量都是由不
@。当将其放置在一个PHP表
同的扩展库定义的,只有在加
达式之前,该表达式可能产生
的任何错误信息都被忽略。
如果激活了track errors
常量是一个简单值的标识 载了这些扩展库时才会出现,
裹1算术运算符 特性,则表达式所产生的任何
错误信息都被存放在变量
¥php
errormsg中,此变量在
_
每次出错时都会被覆盖。
6.执行运算符
PHP支持一个执行运算符
nR
2006
O8
OPEN SOURCE
VV0RLD M0NTHL-Y 93
u
维普资讯
● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●
责编/国晓平gxp@ccu.com.cn美编/庆琨
表2位运算符
例子 称 结果
¥a&¥b And(按位与) 将在¥a和¥b中都为1的位设为1。
¥a I¥b --or(按位或)
¥a^¥b
一
将在Sa或Sb中为1的位设为16
将在¥a和¥b中不同的位设为1。 Xor(按位异或)
¥a Not(按t菠爿仁) 将¥a中为0的位设为1,反之亦然。
将¥a中的位向左移动¥b次(每一次移动都表示“乘以2”)。 ¥a《《¥b Shiftleft (左移)
¥a>>¥b Sh dght(右移) 将Sa中的位向右移动¥b次(每一次移动都表示“除以2”)。
例子
¥a==¥b
名称
等于
结果
TRUE,如果 ¥a等于¥b。
Sa===¥b 全等 TRUE,如果¥a等于¥b,并且它们的类型也相同(只有PHP 4)。
¥a!=¥b
Sa<>¥b
不等 ;
不等
TRUE,如果¥a不等于¥b。
TRUE,如果¥a不等于¥b。
¥a!==¥b 非全等 TRUE,如果Sa不等于Sb,或者它们的类型不同(只有PHP 4)。
¥a<Sb
¥a>Sb
小与
大于
TRUE,如果¥a严格小于¥b。
TRUE,如果Sa严格¥b。
¥a<=¥b
Sa>=¥b
小于等于
大于等于
TRUE,如果¥a小于或等于¥b。
TRUE,如果¥a大于或等于Sbo
8.逻辑运算符
逻辑运算符见表5所示。
11.数组运算符
PHP仅有一个数组运算符
“+”运算符,它把右边的数组附
“反引号”。注意,这不是单引
号!PHP将尝试将反引号中
的内容作为外壳命令来执行,
并将其输出信息返回。使用反 9.运算符优先级
引号运算符的效果与函数
shell
exec0相同。
_
运算符优先级见表6所示。 加到左边的数组后,但是重复
的键值不会被覆盖。
注意,反引号运算符在激 1 0.字符串运算符
活了安全模式,或者关闭了
shell
exec0时是无效的。
_
字符串运算符有两个,第一
个是连接运算符“.”,它返回其
左右参数连接后的字符串。第二 1.分支
流程控制
7.加/减运算符 个是连接赋值运算符“.一,它将 有如下3种分支语句:
加/减运算符见表4所示。 右边参数附加到左边的参数后。
if(express)<)
if(eXP res¥){ )eISeif
表4加/减运算符
名称
前加
后加
~
(express){ Ise{)
效果
switch()
2.循环
类似于C语言,PHP也有
三种循环语句:
¥a的值加一,然后返回¥a0
返回¥a,然后将¥寰的值加一。
\。 返回¥a’ 然后将¥a的值减一。 _
¥a
}
蔑 |■ 鬈 ¥a的值减_,一然后返回¥a。 套;
居减 ¥a一
94拜放系统 界2oo6
.
o8
维普资讯
放系统j_il=界
表5逻辑运算符
台嘲子 名称 效果
Sa and¥b And(逻辑与) TFlu E’如桑¥a与¥b都为TRUE
Sa or¥b or(逻辑或) TRUE,如果¥a或¥b任一为TRUE。
Sa xorSb Xor(逻辑异或) TRUE,如果Sa或Sb任一为TRUE,但不同时
!Sa Not(逻辑非) TRUE,如果Sa不为TRUE。
Sa占&釉 | 辑与、 TRUE; 弧幕 与 掷为TRUE0
Sa H¥b j. 一o 逻攀 TRUEi如.果¥a或¥b任 为RUE ̄“
while(express){)
像,这只是一种遍历数组简便
4.break和continue
do{}while(express);
方法。foreach仅能用于数组, bmak ̄束当前for、foreach、
for(::){)一
当试图将其用于其它数据类型
while、do。。while或switch ̄构的
或一个未初始化的变量时会产 执行。它可以接受一个可选的数
3.foreach
生错误。有两种语法,第二种
字参数来决定跳出几重循环。
PHP 4中包括了foreach 不太重要,但却是第一种的有 continue在循环结构用来
结构,它和Ped及其他语言很
用的扩展。
跳过本次循环中剩余的代码,
并开始执行下一次循环。它可
表6运算符优先级
以接受一个可选的数字参数
结合方向 运算符
来决定跳过几重循环到结尾。
左
j皇 。 Of
5.return
琶 Xor
如果在一个函数中调用,
左 一 And ・
则return()语句立即结束此函
右 ! Print
数的执行,并将它的参数作为
奄 ;+= ,=, .=%=&=l= =~ <<-->>--
函数的值返回。return()会终止
卺 :
eval0语句或脚本文件的执行。
左
如果在全局范围中调用,
左 && :
则当前脚本文件中止运行。如
左 I
果当前脚本文件是被include()
左 A 。
或require()的,则控制交回调
左 &
用文件。此外,如果当前脚本
免 _l= !====l== 是被include()的,则return()的
j 《《=》》=
值会被当作include()调用的返
左 《《》》
回值。如果在主脚本文件中调
王 +一. 一 - l l
用return(),则脚本中止运行。
左 , s%
如果当前脚本文件是在php.ini
右 t 一++一(int)(lfoat)(string)(array)(object)@
中的配置选项auto_prepend_
右 ifle,或者auto append file所指
无 new l 、一 (下转第96页)
200 6
nR
08
OPEN SOURCE WORLD MONTHLY 95
维普资讯
知识
nowIedge CIassr0om.黉掌………………………………
责编/国晓平gxp@ccu.com.cn美编/庆琨
技术讲座
麓蕞t 疆:
支持S.M.A.R.T技术的硬盘可以通过硬盘上的监测指令和主机监测软件,随时监测磁
头,盘片,马达、电路等运行情况。做好网络设备使用情况的实时监控对于了解端口流量
状况也非常重要。
做好L i n u x硬件实时监控(三)
存储设备、网络设备监控
一曹江华
T技术则可以避免这个事情的
T技术的硬盘可以通过硬盘上
发生。 的监测指令和主机上的监测软
件,对磁头,盘片,马达、电
硬盘物理坏道是Linux硬
件故障中最让人头痛的,它轻 1.S.M_A.R.T简介
则使计算机频频死机,重则让
路的运行情况、历史记录及预
S.M.A.R.T即自我监测、分 设的安全值进行分析,比较,当
所有数据丢失,采用S.M.A-R. 析及报告技术。支持S.M.A_R. 出现安全值范围以外的情况
(上接第95页)
数值。可变长度参数列表仅在
义函数”错误。例如,要使用诸
定的,则此脚本文件中止运行。
PHP 4和后续版本中支持。
如imagecreatetruecolor()的“图
返回值通过使用可选的返
像函数”,就需要在编译PHP的
6.require()和include() 回语句返回,任何类型都可以 时候加上GD的支持。另外,还
有一些核心函数,例如“字符串
函数”和“变量函数”,它们存在
于每一个版本的PHP中。
require()和include()语句
返回。
包括并运行指定文件,它们结
构除了处理失败不同,其他完
<?php
functionfoo《¥arg_l,¥arg_2,…,
全一样。include()产生一个警
¥a峭一n)
告,而require()则导致一个致
命错误。换句话说,如果想在
遇到丢失文件时停止处理页
{
echo”Example unctfIon.、n
小结
retum¥retval;
这一讲主要介绍了PHP语
法基础,它是学习编写PHP程
序的基础,包括基本语法、类
型、变量和常量的声明、运算
面,就用require()。同时要确
认设置了合适的include_path。
函数
1.用户自定义函数
2.内部(内建)函数 符、流程控制和PHP中的函数。
PHP有很多标准的函数和 从下一讲开始,我们以一个典
结构,还有一些函数需要和特定
型的电子商务网站的建设为
PHP支持按值传递参数 的PHP扩展模块一起编译,否则 例,从简单到复杂,逐步介绍
(默认),通过引用传递和默认参 使用时会得到一个致命的“未定 如何使用PHP语言。
96盯放系统}陡猝2006
.
08
版权声明:本文标题:第二讲 PHP基础 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713919153a657708.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论