PHP基础语法总结(一)
这篇文章,是非常简要的总结一下PHP的最基础语法,方便熟练快速的写服务端一些程序。
1. 实验环境
实验环境使用的是ubuntu 14.04 64-bit操作系统,对于php解释器的安装,直接使用:
sudo apt-get install php5-cli
进行安装,php --version
显示:
PHP 5.5.9-1ubuntu4.14 (cli) (built: Oct 28 2015 01:34:46)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
我们可以直接采用类似shell执行的方式,编写PHP脚本,在第一行指定解释器,将php代码通过<?php ?>
包含起来,然后运行脚本,如下示例:
#!/usr/bin/php
<?php
echo "Hello, PHP!\n";
?>
其中,echo是显示一串字符串。当然,需要chmod +x来进行修改可执行权限,这个跟运行shell脚本是一个道理的。
2. 变量和常量
PHP定义变量,特点是:无论是在定义还是使用都会带一个$
美元符号,这跟C和Shell都是不同的,例如:
#!/usr/bin/php
<?php
$var0 = NULL;
$var1 = 520;
$var2 = 'yoyo check now.';
var_dump($var0,$var1,$var2);
?>
其中var_dump
是用来显示变量信息的函数。
变量命名对大小写敏感,合法的变量名是以下划线或者字符开头,后面跟任意若干字母、数字或者下划线。
常量是使用define()函数来定义的,常量和变量有以下几点区别:
- 常量前面没有美元符号($)
- 常量只能用define()函数定义,而不能通过赋值语句
- 常量可以在任何地方定义,而不遵循变量范围的规则
- 常量一旦定义就不能被重新定义或者取消定义
- 常量的值只能是标量
示例代码如下:
#!/usr/bin/php
<?php
define("CONSTANT","Constant string~");
var_dump(CONSTANT);
?>
3. 数据类型
PHP常用的基本数据类型有:
布尔型,取值为”true”或者”false”,例如:$var=true; $var1=false
整型,数值类型,表示整数,例如:$var1=12345;
浮点型,数值类型,即可以用来表示小数,例如:$var2=12.333;
字符串,字符串类型,表示一串字符,有三种定义方法:单引号、双引号和定界符,如下面代码示例:
#!/usr/bin/php
<?php
$name = 'allen';
$var1 = "my name is $name";
$var2 = <<<EOD
first line
second line
yoyo third line.
EOD;
var_dump($name,$var1,$var2);
?>
单引号包含的是一个纯字符串,当字符串中包含变量,需要解析时,使用双引号和界定符,使用界定符时,注意缩进。
资源,资源是一种特殊的变量类型,是外部资源的一个引用,比如数据库资源等。
PHP是一种动态语言,与Matlab和Python类似,变量的数据类型将会由实际的数据来决定,可以任意转换,不需要明确的类型定义。举例来讲,把整数赋值给了变量var,var则为整型,如果又把字符串赋值给了var,那var就变成了字符串类型了。
4. if、while、for语句
编程语言,有了不同的数据类型和变量,自然少补了各种顺序执行的if、while、for语句。PHP中的这类语句的语法和C语言中的基本完全一样,如下示例代码:
#!/usr/bin/php
<?php
$var0 = 10;
if($var0 < 100){
echo "var0 < 100\n";
}else{
echo "var0 >= 100\n";
}
for($var1=1;$var1<10;$var1++){
echo "in for statement, var1=$var1\n";
}
$var2=1;
while($var2<=10){
echo "in while statement, var2=$var2\n";
$var2++;
}
?>
5. 函数
作为模块化的编程,函数必不可少,PHP中已有很多功能丰富的内置函数,而自定义函数格式如下:
function 函数名(函数参数){
//函数执行语句
}
函数具有全局属性,可以在任何地方定义,也可以在任何地方使用。那么,在大型项目中,就可能存在在函数名冲突的情况,一般会选择使用命名空间的方法来处理避免,与C++类似。
函数返回使用return语句,可以返回任何类型,所以定义函数时并没有指定函数的返回类型。可以注意到,这个函数的格式跟Shell的函数定义很像。示例代码如下:
#!/usr/bin/php
<?php
function just_print($text){
echo "we print:\n";
echo "$text\n";
}
just_print("Good morning!");
just_print("Good afternoon!");
?>
参考文献
[1] 从零开始学PHP