当前位置:首页>软件介绍>PHP语法总结 查询:
     
PHP语法总结

简介:

PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP 是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP 独特的语法混合了C、Java、Perl 以及PHP 自创新的语法。它可以比CGI 或者Perl 更快速的执行动态网页。

PHP语法与C最大的不同之处在于PHP重实用,而C重原理。PHP的创始人是为了更新自己的主页而设计PHP的,不是像C的创始人那样为了开发操作系统,这是两者语法风格不同的根本原因。

重点:

PHP的基本语法:数据类型、常量、变量、运算符与表达式、流程控制、函数、数组。

1、PHP的数据类型

不管常量还是变量都不需要先定义后使用(类中的变量除外),PHP根据第一次赋值的情况自动决定数据类型。

PHP的基本变量类型有整型(Integer)、浮点型(Float)、字符串(String)(这是C 没有的,但C++有String类)以及布尔型(Boolean)(C没有,但是C++有)。

构造类型有数组和对象。

此外还有两个特殊类型:空值(NULL)(C也有)和资源(Resource)。

2、定义常量

用define函数来定义

define函数原型:bool define(string name,value,[,bool case_insensitive])第三个参数如果是TRUE,则表示常量名是大小写不敏感的,反之就是敏感的,默认是敏感的。

【例】复制PHP内容到剪贴板

PHP代码:

<?php

define(“C1”,”Hello PHP World!”);

echo C1;

?>

运行结果:输出常量C1的值(Hello PHP World!)。

内容解释和补充:

① <?php和?>是PHP代码的定界符,将PHP代码同HTML代码区分出来。

② PHP代码的语句以分号结束

③ PHP支持C和Unix风格的注释方式:

/* C风格多行注释 */

// C风格单行注释

# Unix风格单行注释

④ echo就相当于C的printf或C++的cout

⑤ PHP也支持‘ ’作为换行符,但是它的含义仅仅相当于在HTML里敲个回车,

浏览器里看还是在一行上的。

3、定义变量

变量名前都要带个$

不用担心自定义变量名同PHP关键字冲突,可以定义一个变量叫$if,$for等。但不推荐这么做。

变量名大小写敏感,并且命名方式遵循C标识符的命名原则。

【例】复制PHP内容到剪贴板

PHP代码:

<?php

$var1=100;

$var2=&$var1;

$var2=200;

echo $var1.”<br>”;

echo $var2;

?>

运行结果:输出两个200,分别是$var1和 $var2的值。

内容解释和补充:

①输出的时候为了清楚加了个换行符,PHP里句点(.)是字符串的连接符。

如果你在把上面的echo语句写成:

echo “The value of $var1 is ”.$var1.”<br>”;

那么你得到的输出将是:The value of 200 is 200

② PHP在使用双引号作为字符串的定界符时,会自动把变量名替换成相应的值。

如果你想保持变量名原样输出,那么可以用单引号做字符串的定界符。

③语句$var2=&$var1;中的&符号的含义是将变量名$var2也指向$var1所在的存

储空间。$var2并不是一个新变量,而是$var1的另一个名字,它们对应的是同一段内存空间,不管使用谁都是访问的同一个变量,$var2就叫做对$var1的引用。

变量作用域

【例】复制PHP内容到剪贴板

PHP代码:

<?php

$a=1;

function func()

{

echo "The value of a is:".$a;

}

func();

?>

【例】复制PHP内容到剪贴板

PHP代码:

<?php

$a="newname";

$$a="content"; //newname本是$a的值,但是$$a的含义是以$a的值为名的变

echo $newname; //$$a等价于 $newname

echo $a;

?>

4、运算符和表达式

PHP在运算符和表达式方面和C极其类似,有算术、逻辑、关系、位运算符及相应的表达式,也有条件运算符(:?)及其表达式,同样还是我们开始提到的那个思想,实用为上,很多限制被取消了,相对较宽松。

【例】

复制PHP内容到剪贴板

PHP代码:

<?php

$a="1";

$b=1;

if ($a==$b) echo "Equal!";

else echo "Not Euqal!";

?>

运行结果:“Equal!”

内容解释和补充:

① PHP将字符串转换为数值时会自动截取全部它能理解为数值的部分

②允许跨越数据类型的比较

③想严格比较两个变量,PHP提供了一对特殊的运算符:全等(===)和非全等(!==)。只有当值相当且数据类型相同时,才叫全等,两者有一不符,则非全等。此时,即使1与

1.0也是非全等的。

④运算符有优先级和结合性的概念

4、流程控制

1)switch case语句中case后面可以写任意表达式。C只能是常量表达式。

2)if elseif else结构中间的else和if可以连在一起写。

3)PHP有一个独特的循环结构foreach,是专门为数组遍历准备的。

6、函数

函数定义的一般形式是:

function 函数名($参数1,$参数2,……,$参数n)

{

函数体

return 语句返回值

}

函数可以嵌套定义。

引用

引用就是给变量取个小名(专业的话叫别名),即两个或多个变量名对应同一变量存储空间。

这一概念用在函数参数上特别有用,我们知道实参与形参的结合是单向值传递,即实参将它的值复制给形参,而形参变量在函数体中可能被改变,但由于形参变量会在函数返回时被撤销,所以形参不能将改变了的值传回给实参。这一机制保证了函数只能有一个返回值。

当需要返回多个值的时候,我们可以使用引用做形参,这相当于把实参的地址传递给函数,函数对这个地址上的数据进行操作,当然就可以把改变保留下来。引用的概念是C++里增加的,PHP的函数也支持引用做形参。只要把C++里引用做参数的概念理解清楚了,在PHP 里是完全一样的。

PHP有巨大的函数库,比如关于时间的函数就有一大堆。

7、数组

PHP的数组很像数学概念中的“集合”。

PHP的数组就是把一堆数据(什么类型都行)放在一起。很像C的结构体,比结构体还灵活,它可以自动增减数据元素。

PHP数组的定义:

通过array函数实现,一般形式为:

$数组名=array(键名=>数据, 键名=>数据, ……, 键名=>数据);

这里的键名在C中叫下标,在PHP里键名非常人性化。对应的数据如果存储的是姓名,键名就可以叫name,是成绩,就可以叫score,当然你如果想用整数也可以,随你的便。

如果你懒得在定义数组时指定键名,可以这样写:

$数组名=array(数据1, 数据2, ……, 数据n);

这时候PHP会按照C语言的方式按数据的先后顺序从0开始自动赋予整型键名。

PHP提供了一个特别方便的显示数组全部元素的函数print_r

【例】复制PHP内容到剪贴板

PHP代码:

<?php

$arr1=array(100,200,300,400);

$arr2=array("num"=>100,"name"=>"Liuxy","score"=>98);

print_r($arr1);

echo "<br>";

print_r($arr2);

?>

输出结果:

Array ( [0] => 100 [1] => 200 [2] => 300 [3] => 400 )

Array ( [num] => 100 [name] => Liuxy [score] => 98 )

定义二维数组。可以嵌套地使用array函数。

【例】复制PHP内容到剪贴板

 

PHP代码:

$arr=array(

"row1"=>array(100,200,300,400),

"row2"=>array("num"=>100,"name"=>"Liuxy","score"=>98)

);

PHP数组元素的访问,是数组名[键名]的形式。

PHP数组的遍历:

通过foreach语句实现,foreach语句格式如下:

foreach (数组名 as 变量名) 数据元素处理语句;

翻译成C语言就是:

for (i=0;i<n; i++){变量名=a;其他包含“变量名”的处理语句} foreach等价于前面的 for (i=0;i<n; i++)

as等价于“变量名”与a之间的等号

【例】

复制PHP内容到剪贴板

PHP代码:

<?php

$arr=array(1,2,3,4,5,6);

foreach ($arr as $value ) echo ”$value<br>”;

?>

输出结果:只有数值。

如果还想把对应的键名也同时输出出来,可以用这样的形式:

foreach ($arr as $key=>$value) echo “键名为$key的元素值为$value”;

遍历二维数组:在C中我们一般用二重for循环,PHP中的foreach也可以嵌套使用。

【例】复制PHP内容到剪贴板

PHP代码:

<?php

$arr=array(

"row1"=>array(100,200,300,400),

"row2"=>array("num"=>100,"name"=>"Liuxy","score"=>98)

);

foreach ($arr as $key=>$value)

{

echo "$key=>$value";

echo "<br>";

foreach ($value as $k=>$var) echo "$k=>$var<br>";

}

?>

PHP的数组元素是可以动态增长的。

为数组增加一个元素同访问数组元素一样,只不过键名是新的或者为空,如$arr[new]=3; 或$arr[]=3,这样做的结果是PHP为数组$arr增加一个键名为new的元素其值为3,若键名为空,则以当前整型键名的最大值加1作为默认的键名分配给新的元素。

要想删除一个数组元素,可以使用unset函数。

如删除上面新增的那个元素,可以写成unset($arr[new])。也可以使用unset函数删除整个数组结构,如unset($arr)。

提醒大家的是,PHP为数组的排序、查找、合并、拆分提供了大量函数,用到这些基本算法时,不用再去翻数据结构课本了。



名易MyPCS生产事务协调系统名易MyOA协同办公管理软件
名易MyIMS贷款管理系统名易MyIDP快速开发平台
名易MyIBP保险业务管理系统名易MyHR人力资源管理软件
名易MyHMS酒店综合管理系统名易MyCRM客户关系管理软件
资产管理软件用品管理软件
车辆管理软件会议管理软件
PHP应用中的八种常见文件操作方式PHP入门的学习方法
php语言入门教程对php编程语言的理解
信息发布:广州名易软件有限公司 http://www.myidp.net
  • 名易软件销售服务
  • 名易软件销售服务
  • 名易软件技术服务

  • PHP语法总结