1. PHP语言基础
1.1 PHP代码风格
# XML风格
<h1><?php echo'现在是'.date("Y年m月d日 H:i:s");?></h1>
# 简短风格
<h1><? echo'现在是'.date("Y年m月d日 H:i:s");?></h1>
# 脚本风格
<h1><script language='php'> echo'现在是'.date("Y年m月d日 H:i:s");</script></h1>
# ASP风格
<h1><% echo'现在是'.date("Y年m月d日 H:i:s");%></h1>
1.2 注意事项
- 区分大小写:变量和常量名区分大小写;类名和方法名以及一些关键字不区分;建议除了常量名之外的其他符号都小写
- <?php 和 ?>之间必须是一行或多行完整的语句
- 每条语句以“;”结尾。
1.3 常量和变量
- 定义符号常量。用define()来定义和判断
<?php
define("PI","3.1416"); //定义符号常量PI,并且区分大小写
define("SITE","网页设计学习网",true); //定义符号常量SITE,不区分大小写
echo (defined("PI")); //如果已被定义则返回“1” (注意是defined)
?>
- 预定义的符号常量
__FILE__ : 存储当前脚本的物理路径及文件名称
__LINE__ : 存储该常量所在的行号
__FUNCTION__ : 存储该常量所在的函数名称
PHP_VERSION : 存储当前PHP的版本号
PHP_OS : 存储当前服务器的操作系统名
- 变量
1 . PHP变量必须以“$”开头,区分大小写
2 . 使用前不需要声明变量
3 . 不能以数字或其他字符开头;长度应少于255个字符;不能使用系统关键字作为变量名
eg : $_id , $ss 都是合法的变量名; $-id , $7kabu是非法的变量名
1.4 变量的作用域和生存期
变量根据作用域和生存期分类:
全局变量: 定义在所有函数外的变量,其作用域是整个PHP文件减去用户自定义的函数内部
局部变量: 定义在函数内部的变量,只有这个函数内的代码才可以使用该变量
静态变量: 是局部变量的一种,能够在函数调用结束后仍保留变量的值
1.5 可变变量和引用赋值
可变变量:使用一个变量的值作为另一个变量的名称 eg:$a = 'b'; $b = '输出'; echo $$a >>>"输出"
引用赋值:新变量引用原始变量的地址,修改新变量的值将影响原始变量,反之亦然 eg: $b = &$a;
只有已经命名过的变量才可以引用赋值 , 错误用法:$bar = &(25 * 5);
1.6 运算符
# 1. 算术运算符
加(+) 减(-) 乘(*) 除(/) 取余(%)
# 2. 连接运算符
"." :用于将两个字符串连接起来,强制连接运算符,如果左右有数字,注意将"."和数字用空格隔开
# 3. 赋值运算符
= += -= &= |= .=
# 4. 比较运算符
== >= <= !== <> === !==
# 5. 逻辑运算符
逻辑与(&&或and) 逻辑或(||或or) 逻辑非(!) 逻辑异或(xor)
优先级由高到低:&& > and > ;|| > or ; || > = > or
# 6. 加1/减1运算符
前加(++$a) 后加($a++) 前减(--$a) 后减($a--)
# 7. 条件运算符
条件表达式 ? 表达式1 :表达式2
eg: 分页程序
$page = (isset($_GET['page']))?$_GET['page']:"1";
# 8. 执行运算符
`` :反引号 可用来执行shell命令
//IIS出于安全性考虑,禁止使用执行运算符,执行运算符只能在Apache中使用
<?php $output = `dir`;
echo $output;
echo shell_exec('dir');
?>
运行结果如下:
1.7 PHP的字符串
//如果字符串中出现引号,则需要使用转义字符(\'或\")来输出 eg:
echo 'I\'m a girl'; //输出结果为 I'm a girl
//单引号字符串:包含纯粹的字符串;双引号字符串:可以包含字符串和变量名 eg:
# 界定符输出字符串
<?php
echo <<<KABU
字符串内容
KABU;
?>
# 获取字符串中的字符
字符串变量[index]
$i = 'kabu';
echo $i[0];
# 获取字符串长度
echo strlen('kabu');
echo mb_strlen('中文内容',"gb2312");
1.8 PHP的数据类型和类型转换
数据类型 | 具体描述 |
---|---|
整型(integer) | 整数,占4个字节 |
浮点型(float) | 实数,包括小数的数 |
布尔型(boolean) | 只有true和false两种取值 |
字符串(string) | 字符序列 |
数组(array) | 由一组相同数据类型的元素组成的数据结构 |
对象 | 类的一个实例 |
NULL | 空类型 |
资源(resource) | PHP特有,用于表示PHP的外部资源 |
伪类型 | 只用于函数定义中,表示一个参数可接受多种类型的数据,还可以接受别的函数作为回调函数使用 |
# 自动类型转换
# 强制类型转换
(类型名)(变量或表达式)
$a = "2.0";
$b = (int) $a;
$c = (array) $a;
print_r($c);