1、PHP 脚本在服务器上执行,然后向浏览器发送回纯 HTML 结果。
2、PHP 语句以分号结尾(;)。PHP 代码块的关闭标签也会自动表明分号(因此在 PHP 代码块的最后一行不必使用分号)。
3、在PHP中,所有的变量都对大小写有严格的区分。
4、变量以 $ 符号开头,其后是变量的名称
5、PHP的变量作用域
局部变量(local)
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
全局变量(global)
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
global 关键词用于访问函数内的全局变量
<?php
$x=5;
$y=10;
function myTest() {
global $x,$y;
$y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
静态变量(static)
6、PHP echo和print语句的区别
echo - 能够输出一个以上的字符串
print - 只能输出一个字符串,并始终返回 1
echo 比 print 稍快,因为它不返回任何值。
7、var_dump()
会返回变量的数据类型和值:
8、PHP函数
PHP强大之处在于他有超过1000个内置函数
页面加载时函数不会立即执行。
函数只有在被调用时才会执行。
9、在PHP创建用户定义函数
PHP函数的定义和JavaScript的定义方式相同。
函数对大小写不敏感
10、PHP 函数参数
您可以添加任意多参数,只要用逗号隔开即可,相当于Java中的可变形参。
function familyName($fname) {
echo "$fname Zhang.<br>";
}
函数调用的时候不传入任何参数。
<?php
function setHeight($minheight=50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // 将使用默认值 50
setHeight(135);
setHeight(80);
?>
11、PHP的数组
创建方式
$cars=array("Volvo","BMW","SAAB");
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
查看W3C官方手册
12、PHP数组排序
sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
13、PHP超全局变量
PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
其他的查看官方文档
14、PHP $_POST和$_GET
$_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。$_POST 也常用于传递变量。
PHP $_GET 也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。
$_GET 也可以收集 URL 中的发送的数据。
15、PHP 超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data)。
form表单的必填项,action填写接受数据的PHP页面(也可以是JSP、ASP),method选择你使用的(提交方式POST GET)
POST和GET的区别
16、PHP数据提交的时候进行的数据校验
$_SERVER["PHP_SELF"] 是一种超全局变量,它返回当前执行脚本的文件名。
因此,$_SERVER["PHP_SELF"] 将表单数据发送到页面本身,而不是跳转到另一张页面。这样,用户就能够在表单页面获得错误提示信息。
htmlspecialchars() 函数把特殊字符转换为 HTML 实体。这意味着 < 和 > 之类的 HTML 字符会被替换为 < 和 > 。这样可防止攻击者通过在表单中注入 HTML 或 JavaScript 代码(跨站点脚本攻击)对代码进行利用。
在表单验证的时候需要进行两部分
1.(通过 PHP trim() 函数)去除用户输入数据中不必要的字符(多余的空格、制表符、换行)
2.(通过 PHP stripslashes() 函数)删除用户输入数据中的反斜杠(\)
17、表单的必填项
参考:http://www.w3school.com.cn/php/php_form_required.asp
18、PHP 表单验证 - 验证 E-mail 和 URL
preg_match() 函数检索字符串的模式,如果模式存在则返回 true,否则返回 false。
各种操作都需要经过正则表达式来进行验证。
isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,
unset 解除设置。
19、PHP date() 函数用于对日期或时间进行格式化。
date(format,timestamp);
通过 PHP mktime() 创建日期
PHP 提示 - 自动版权年份
通过 PHP mktime() 创建日期
通过 PHP strtotime() 用字符串来创建日期
更多查看PHP日期的手册
20、PHP Include文件(必须在服务器执行之前进行include)
通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。
使用方法:<?php include 'footer.php';?> 将footer这个php文件引入到当前的php,可已在当前的界面中来调用被包含的php文件中的变量的数值,通过 .+属性的名字 如:获取名字 .$name。
两种引用方式据情况使用
如果用 include 语句引用某个文件并且 PHP 无法找到它,脚本会继续执行
如果我们使用 require 语句完成相同的案例,echo 语句不会继续执行,因为在 require 语句返回严重错误之后脚本就会终止执行:
21、PHP 操作文件
PHP 拥有的多种函数可供创建、读取、上传以及编辑文件。
1.PHP readfile()函数。 readfile() 函数读取文件,并把它写入输出缓冲。
<?php echo readfile("webdictionary.txt");?> 当读取成功后,会返回字节。
22、PHP文件的打开和读取
http://www.w3school.com.cn/php/php_file_open.asp
23、PHP 文件创建/写入
http://www.w3school.com.cn/php/php_file_create.asp
24、PHP 文件创建/写入
http://www.w3school.com.cn/php/php_file_upload.asp
25、PHP Cookie
1.设置Cookie的值
cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
创建Cookie:setcookie() 函数用于设置 cookie。
注意:setcookie() 函数必须位于 <html> 标签之前。
设置语法:setcookie(name, value, expire, path, domain); name:Cookie的名字,value:Cookie的值,exprie:Cookie失效的时间,path:Cookie 在服务器端的有效路径, Domain:该 cookie 有效的域名。
在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)。
2.取回Cookie的值
PHP 的 $_COOKIE 变量用于取回 cookie 的值。
3.如何删除 cookie?
当删除 cookie 时,您应当使过期日期变更为过去的时间点。
4.如果浏览器不支持 cookie 该怎么办?
您就不得不采取其他方法在应用程序中从一张页面向另一张页面传递信息。一种方式是从表单传递数据(有关表单和用户输入的内容,稍早前我们已经在本教程中介绍过了)。
26、PHP Sessions
变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
1.开始 PHP Session
session_start() 函数必须位于 <html> 标签之前:跟Cookie一样。
<?php session_start(); ?>
<html>
<body>
</body>
</html>
上面的代码会向服务器注册用户的会话,以便您可以开始保存用户信息,同时会为用户会话分配一个 UID。
2.存储和读取Session
<?php
session_start();
// 存储 session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//读取 session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>
3.终结 Session
如果您希望删除某些 session 数据,可以使用 unset() 或 session_destroy() 函数。例如:unset($_SESSION['views']);
27、PHP 发送电子邮件
调用函数PHP mail()
例如:mail(to,subject,message,headers,parameters) to:邮件的接受者 subjetc:邮件的主题 message:定义要发送的消息。应使用 LF (\n) 来分隔各行。headers:规定附加的标题 parameters :可选。对邮件发送程序规定额外的参数。
注意:PHP 需要一个已安装且正在运行的邮件系统,以便使邮件函数可用。所用的程序通过在 php.ini 文件中的配置设置进行定义。
配置参考:http://www.w3school.com.cn/php/php_ref_mail.asp
28、PHP 安全的电子邮件
对上面电子邮件的设计进行安全的设置
29、PHP 错误处理(error)
2、PHP 语句以分号结尾(;)。PHP 代码块的关闭标签也会自动表明分号(因此在 PHP 代码块的最后一行不必使用分号)。
3、在PHP中,所有的变量都对大小写有严格的区分。
4、变量以 $ 符号开头,其后是变量的名称
5、PHP的变量作用域
局部变量(local)
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
全局变量(global)
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
global 关键词用于访问函数内的全局变量
<?php
$x=5;
$y=10;
function myTest() {
global $x,$y;
$y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
静态变量(static)
6、PHP echo和print语句的区别
echo - 能够输出一个以上的字符串
print - 只能输出一个字符串,并始终返回 1
echo 比 print 稍快,因为它不返回任何值。
7、var_dump()
会返回变量的数据类型和值:
8、PHP函数
PHP强大之处在于他有超过1000个内置函数
页面加载时函数不会立即执行。
函数只有在被调用时才会执行。
9、在PHP创建用户定义函数
PHP函数的定义和JavaScript的定义方式相同。
函数对大小写不敏感
10、PHP 函数参数
您可以添加任意多参数,只要用逗号隔开即可,相当于Java中的可变形参。
function familyName($fname) {
echo "$fname Zhang.<br>";
}
函数调用的时候不传入任何参数。
<?php
function setHeight($minheight=50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // 将使用默认值 50
setHeight(135);
setHeight(80);
?>
11、PHP的数组
创建方式
$cars=array("Volvo","BMW","SAAB");
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
查看W3C官方手册
12、PHP数组排序
sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
13、PHP超全局变量
PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
其他的查看官方文档
14、PHP $_POST和$_GET
$_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。$_POST 也常用于传递变量。
PHP $_GET 也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。
$_GET 也可以收集 URL 中的发送的数据。
15、PHP 超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data)。
form表单的必填项,action填写接受数据的PHP页面(也可以是JSP、ASP),method选择你使用的(提交方式POST GET)
POST和GET的区别
16、PHP数据提交的时候进行的数据校验
$_SERVER["PHP_SELF"] 是一种超全局变量,它返回当前执行脚本的文件名。
因此,$_SERVER["PHP_SELF"] 将表单数据发送到页面本身,而不是跳转到另一张页面。这样,用户就能够在表单页面获得错误提示信息。
htmlspecialchars() 函数把特殊字符转换为 HTML 实体。这意味着 < 和 > 之类的 HTML 字符会被替换为 < 和 > 。这样可防止攻击者通过在表单中注入 HTML 或 JavaScript 代码(跨站点脚本攻击)对代码进行利用。
在表单验证的时候需要进行两部分
1.(通过 PHP trim() 函数)去除用户输入数据中不必要的字符(多余的空格、制表符、换行)
2.(通过 PHP stripslashes() 函数)删除用户输入数据中的反斜杠(\)
17、表单的必填项
参考:http://www.w3school.com.cn/php/php_form_required.asp
18、PHP 表单验证 - 验证 E-mail 和 URL
preg_match() 函数检索字符串的模式,如果模式存在则返回 true,否则返回 false。
各种操作都需要经过正则表达式来进行验证。
isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,
unset 解除设置。
19、PHP date() 函数用于对日期或时间进行格式化。
date(format,timestamp);
通过 PHP mktime() 创建日期
PHP 提示 - 自动版权年份
通过 PHP mktime() 创建日期
通过 PHP strtotime() 用字符串来创建日期
更多查看PHP日期的手册
20、PHP Include文件(必须在服务器执行之前进行include)
通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。
使用方法:<?php include 'footer.php';?> 将footer这个php文件引入到当前的php,可已在当前的界面中来调用被包含的php文件中的变量的数值,通过 .+属性的名字 如:获取名字 .$name。
两种引用方式据情况使用
如果用 include 语句引用某个文件并且 PHP 无法找到它,脚本会继续执行
如果我们使用 require 语句完成相同的案例,echo 语句不会继续执行,因为在 require 语句返回严重错误之后脚本就会终止执行:
21、PHP 操作文件
PHP 拥有的多种函数可供创建、读取、上传以及编辑文件。
1.PHP readfile()函数。 readfile() 函数读取文件,并把它写入输出缓冲。
<?php echo readfile("webdictionary.txt");?> 当读取成功后,会返回字节。
22、PHP文件的打开和读取
http://www.w3school.com.cn/php/php_file_open.asp
23、PHP 文件创建/写入
http://www.w3school.com.cn/php/php_file_create.asp
24、PHP 文件创建/写入
http://www.w3school.com.cn/php/php_file_upload.asp
25、PHP Cookie
1.设置Cookie的值
cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
创建Cookie:setcookie() 函数用于设置 cookie。
注意:setcookie() 函数必须位于 <html> 标签之前。
设置语法:setcookie(name, value, expire, path, domain); name:Cookie的名字,value:Cookie的值,exprie:Cookie失效的时间,path:Cookie 在服务器端的有效路径, Domain:该 cookie 有效的域名。
在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)。
2.取回Cookie的值
PHP 的 $_COOKIE 变量用于取回 cookie 的值。
3.如何删除 cookie?
当删除 cookie 时,您应当使过期日期变更为过去的时间点。
4.如果浏览器不支持 cookie 该怎么办?
您就不得不采取其他方法在应用程序中从一张页面向另一张页面传递信息。一种方式是从表单传递数据(有关表单和用户输入的内容,稍早前我们已经在本教程中介绍过了)。
26、PHP Sessions
变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
1.开始 PHP Session
session_start() 函数必须位于 <html> 标签之前:跟Cookie一样。
<?php session_start(); ?>
<html>
<body>
</body>
</html>
上面的代码会向服务器注册用户的会话,以便您可以开始保存用户信息,同时会为用户会话分配一个 UID。
2.存储和读取Session
<?php
session_start();
// 存储 session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//读取 session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>
3.终结 Session
如果您希望删除某些 session 数据,可以使用 unset() 或 session_destroy() 函数。例如:unset($_SESSION['views']);
27、PHP 发送电子邮件
调用函数PHP mail()
例如:mail(to,subject,message,headers,parameters) to:邮件的接受者 subjetc:邮件的主题 message:定义要发送的消息。应使用 LF (\n) 来分隔各行。headers:规定附加的标题 parameters :可选。对邮件发送程序规定额外的参数。
注意:PHP 需要一个已安装且正在运行的邮件系统,以便使邮件函数可用。所用的程序通过在 php.ini 文件中的配置设置进行定义。
配置参考:http://www.w3school.com.cn/php/php_ref_mail.asp
28、PHP 安全的电子邮件
对上面电子邮件的设计进行安全的设置
29、PHP 错误处理(error)