1、基本语法
<?php echo 'Hello World' ?> //后面的?>可以省略
2、echo打印输出语句
echo
指令用来输出,除了输出字符串,还可以输出表达式
<?php echo 'hi' ?>
<?php echo 2*3 ?>
3、点号.
连接符
.
用来拼接两个字符串,跟其他语言中的+
作用相同
<?php echo 'hi'.'girl' ?> //输出 higirl
4、句尾分号;
在php语言中,语句末尾必须加分号,不然就会报错
5、声明变量$
在php中,变量都需要用$来标识,后面紧接变量名
$var_name = "hello"; //这里声明了一个变量名为var_name的变量,其值为hello
声明变量有些规则:
- php的变量名只能以
_
(下划线)和字母开头。变量名可以包含字母、下划线、数字和中文。能包含中文,这就有点神奇了。 - 变量名区分大小
- 多单词变量名建议采用
_
或者是驼峰写法。$var_name
或$varName
7、php变量的数据类型
php是一门松散类型的语言,跟javascript一样。在声明变量时不必定义数据类型,php会自动转换变量的数据类型。
1、布尔类型 bool
两个值,true
orfalse
<?php
//true false 不区分大小写
$bool_1 = true;
$bool_1 = TRUE;
echo $bool_1 = 1; //输出为1
var_dump($bool_1) //输出为bool(true)
$bool_2 = false;
$bool_2 = FALSE;
echo s$bool_2; //输出为0
var_dump($bool_2) //输出为bool(false)
//var_dump用于检测变量的数据类型
?>
2、整形 int
整数,可用十进制,八进制,十六进制表示。
<?php
$data_int = 1234; // 十进制数
$data_int = -567; // 一个负数
$data_int = 0123; // 八进制数(等于十进制的 83)
$data_int = 0x1a; // 十六进制数(等于十进制的 26)
?>
3、浮点类型 float
小数。可用小数点或者科学记数法表示
<?php
$num_float = 1.234; //小数点
$num_float = 1.2e3; //科学计数法,小写e
$num_float = 7.0E-10; //科学计数法,大写E
?>
4、字符串类型 string
字符串包含在单引号或者双引号内,没区别
$str_1 = "string1";
$str_2 = 'string2';
$str_3 = "我的名字是\'哈哈\'"; //带引号的字符串,我的名字是'哈哈'。
// \为转义字符串,用于将有特殊含义的字符转为字符串类型
$str_4 = "我的名字是'哈哈'";
$str_5 = '我的名字是"哈哈"';
使用双引号与变量拼接
$str_1 = ‘hello’;
$str_2 = "$str_1 world";
$str_3 = '$str_1 world";
echo $str_2;//输出 hello world
echo $str_3;//输出 $str_1 world
长字符,换行字符<<<GOD GOD>>>
$str = <<<GOD
我是第一行
我是第二行
我是第三行
GOD>>>
echo $str; //会按照写好的输出三排
5、资源类型 resource
资源是由专门的函数来建立和使用的,例如打开文件、数据连接、图形画布。我们可以对资源进行操作(创建、使用和释放)。任何资源,在不需要的时候应该被及时释放。如果我们忘记了释放资源,系统自动启用垃圾回收机制,在页面执行完毕后回收资源,以避免内存被消耗殆尽。
<?php
$file = fopen('/data/resource/php/test.txt','r');//打开文件
//...
fclose($file); //关闭文件
6、空类型NULL
NULL与null同,不区分大小写。它用来表示变量没有值。当变量赋值为null,未赋值,或是被unset()的时候,该变量都是NULL的。
$var;
$var1 = null;
$var2 = 'test';
unset($var2);
var_dump($var); //NULL
var_dump($var1); //NULL
var_dump($var2); //NULL
8、常量
值不会改变的量。分为自定义常量和系统常量。
1、自定义常量
使用define()
函数自定义常量,除了名称不能使用$外,跟变量一样。
define(const_name,value,boolean); //const_name 为常量名
//value 常量值 可缺省
//boolean 表示是否区分大小写,true表示不敏感 可缺省
define('CONST_1', 212, true);
$str = 'CONST_1';
define($str, 231,true); //使用变量
2、系统常量
__FILE__
:php程序文件名。它可以帮助我们获取当前文件在服务器的物理位置。
__LINE__
:php程序文件行数。它可以帮助我们,当前代码在第几行。
PHP_VERSION
:当前解析器的版本号,它可以告诉我们当前PHP解析器的版本号,我们可以提前知道我们的PHP代码是否可被该PHP解析器解析。
PHP_OS
:执行当前PHP版本的操作系统名称。它可以告诉我们服务器所用的操作系统名称,我们可以根据操作系统优化我们的代码。
常量的使用
使用函数的好处是可以使用变量动态取值。
define('CONST_1', 123);
$int = CONST_1 +10;
$int = constant('CONST_1') +10;
判断常量是否定义
$isDef = define($p); //使用define函数检测,返回一个布尔值
9、运算符
1、算术运算符
加+
、减-
、乘*
、除/
、取模%
2、赋值运算符
等号=
3、比较运算符
等于==
、不等!=
<>
全等===
、不全等
大于、大于等于、小于、小于等于
4、三元运算符
expr1 ? expr2 : expr3;
当expr1成立的时候,运算结果为expr2,否则为expr3
5、逻辑运算符
php的逻辑运算符可以使用英文单词也可以是特定的字符
逻辑与and
&&
逻辑或or
||
逻辑非!
逻辑异或xor
6、字符串连接运算符
前面讲过了
连接.
;与其他语言+
类似
连接赋值.=
;与其他语言+=
类似
$str = 'hello'.' world';
$str .= '--你好'; //hello world--你好
7、错误控制运算符
PHP中提供了一个错误控制运算符“@”,对于一些可能会在运行过程中出错的表达式时,我们不希望出错的时候给客户显示错误信息,这样对用户不友好。于是,可以将@放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉;
如果激活了track_error(这个玩意在php.ini中设置)特性,表达式所产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖,所以如果想用它的话必须尽早检查。
需要注意的是:错误控制前缀“@”不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等。
<?php
$conn = @mysql_connect('localhost','username','password'); //这里访问数据库会出错误,加上@之后就不会报错了,但是可以在错误文件中访问到错误原因
echo "出错了,错误原因是:".$php_errormsg;
?>
10、条件语句
if () {
//..
} else {
//...
}
if () {
//..
} else if {
//...
}
if () {
//..
} else if {
//...
} else {
//...
}
11、条件语句
<?php
switch() {
case 条件一:
//..
break;
case 条件二:
//..
break;
case 条件三:
//..
break;
defualt:
//...
}
?>
12、while 循环
<?php
while(){
//..
}
?>
13、do while 循环
<?php
do {
//...
}while(){
//...
}
?>
14、for 循环
for($i=0;i<9;i++){
//...
}
15、foreach 循环
用于遍历数组
foreach(arr as val) {
//...只取值
}
foreach(arr as index => val) {
//..取值和下标
}