1、基础php
(1)数组html
// 数组的建立 $arr = array("apple", "banana"); $arr = array("f1"=>"apple", "f2"=>"banana"); // 在php5.4以后 可使用 $arr = [1,2,3]; // 对于数组的遍历 $arr_len = count($arr); // 须要注意数组的下标!!! // 相似 python 的 for key,value in arr: print key,"=>",value; foreach($arr as $key=>$value){ echo $key . "=>" . $value; }
2、表单处理python
(1)数据提交方式通常为GET或POST。mysql
(2)表单涉及HTML基本知识。web
// action.php if ($_SERVR["REQUEST_METHOD"] == "POST"){ $name = str_input($_POST["name"]); } function str_input($data){ // 数据验证处理... }
// 定义变量并设置为空值 $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST"){ if (empty($_POST["name"])){ $nameErr = "Name is required!"; }else{ $name = test_input($_POST["name"]); } }
// 表单数据验证,使用 正则表达式 ...
3、高级教程正则表达式
(1)多维数组sql
// 多维数组建立 $arr = [[1,2,3], [2,3,4]]; // 多为数组的引用 $arr[0][0]
(2)时间和日期数据库
// 设置默认时区 date_default_timezone_set("Asia/Shanghai"); // 获取时间 date("Y/m/d h:m:s");
(3)include编程
// 使用include 引入某个文件,当文件不存在时,脚本会继续执行。 // 当使用 require ,找不到文件时,require语句会返回严重错误,脚本中止执行。
(4)文件json
php拥有多个函数能够建立,读取,上传和编辑文件。请谨慎操做文件
<?php $file = fopen("dic.txt", "r") or die("Unable to open file."); echo fread($file, filesize("dic.txt")); fclose($file); // 读取文件的一行,文件的指针会指向下一行 // fgets($file); // 若是没有 end of file, fgetc() 会将指针移动到下一个字符 while(!feof($file)){ echo fgetc($file); } // 文件的写入 $text = "文本内容"; fwrite($file, $text); // 文件上传 // ... ...
(5)Cookies
// cookie 经常使用于用户识别。cookie是服务器留在用户计算机上的小文件。每当相同的计算机经过浏览器请求页面时,它同时会发送cookie。 // 建立cookie, 使用 setcookie()。 必须放在 <html> 标签前面 setcookie(key, value, exprie, path, domain); setcookie("user", "root", time()+3600); // 取回cookie $_COOKIE["user"]; for($_COOKIE as $key=>$value){} // 判断是否已经设置 cookie isset($_COOKIE["user"]); // 删除cookie setcookie("user", "", time()-3600);
(6)Session
// session 变量用于存储有关用户会话的信息,或更改用户会话的设置。 Session变量保存的信息是单一用户的,而且可供应用程序中的全部页面使用。 // Session的工做机制是:为每一个访问者建立惟一的UID,并基于这个UID来存储变量。UID在cookie中,或url来进行传导。 // 启动会话,开启session。须要放在 <html> 标签前面 session_start(); // session 存储变量 $_SESSION["views"] = 1; // session 变量的读取 $_SESSION["views"]; if(isset($_SESSION["views"])){ $_SESSION["views"] = $_SESSION["views"] + 1; } else { $_SESSION["views"] = 1; } echo "views is " . $_SESSION["views"]; // session 的删除 unset($_SESSION["views"]); // 或 session_destory();
(7)E-mail
(8)Error
在建立脚本和web应用程序时,错误处理是一个重要的部分。
// 不一样的错误处理方法 // 基本的错误处理,使用 die() 函数 if(!file_exists("welcome.txt")){ die("File not found."); } else { $file = fopen("welcome.txt", "r"); } // 建立自定义错误处理器 error_function(error_level, error_message, error_file, error_line, error_context)// error_level, error_message 必选 // 触发错误 trigger_error();
(9)Exception
异常(Exception)用于在指定的错误发生时改变脚本的正常流程。
// ...
(10)Filter
过滤器用于验证和过滤来自非安全来源的数据。
验证和过滤用户输入或自定义数据时任何web应用程序的重要组成部分。
// 什么是外部数据 // ①来自表单的输入数据 ②Cookies ③服务器变量 ④数据库查询结果 $int = "asd"; if(filter_var($int, FILTER_VALIDATE_INT)){ echo "数字"; } else { echo "非数字"; }
4、MySQL数据库
(1)数据库链接
$con = mysqli_connect(servername, username, password); if(!$con){ die("数据库链接失败!"); } // 必定不要忘记关闭链接资源 mysqli_close($con);
(2)建立数据库
// CREATE DATABASE database_name; $sql = "CREATE DATABASE my_db"; if(mysqli_query($sql, $con)){ echo "数据库建立成功"; } else { echo "数据库建立失败:" . mysqli_error(); } mysqli_close($con);
(3)建立数据库表
<?php // 建立数据库链接 $con = mysqli_connect("localhost", "root", ""); if(!$con){ echo ""; } // 建立数据库 if(mysqli_query("CREATE DATABASE my_db", $con)){ echo ""; } else { echo "" . mysqli_error; } // 选择数据库 // 对于数据库的选择,固然可使用 “select * from my_db.person” mysqli_select_db("my_db", $con); // 建立sql语句 $sql = "CREATE TABLE Person ( FirstName varchar(15), LastName varchar(15), Age int )"; // 执行sql mysqli_query($sql, $con); // 关闭数据库链接 mysqli_close($con); ?>
一个比较完整点的例子:
$con = mysqli_connect("localhost", "root", "944898186"); if(!$con){ die("数据库链接失败!\n"); } else { echo "数据库链接成功!\n"; } //if(mysqli_query($con, "CREATE DATABASE my_db")){ // echo "数据库建立成功!\n"; //} else { // echo "数据库建立失败!\n"; //} mysqli_select_db($con, "my_db"); //$sql = "CREATE TABLE Persons //( //personID INT NOT NULL AUTO_INCREMENT, //PRIMARY KEY (personID), //FirstName VARCHAR (15), //LastName VARCHAR (15), //Age INT //)"; //$sql = "INSERT INTO Persons (FirstName, LastName, Age) //VALUES ('Peter', 'Griffin', '35')"; //$sql = "INSERT INTO Persons (FirstName, LastName, Age) //VALUES ('Glenn', 'Quagmire', '33')"; $sql = "SELECT * FROM Persons"; $results = mysqli_query($con, $sql); while($row = mysqli_fetch_array($results)){ echo $row["FirstName"]."=>".$row["LastName"]."\n"; } mysqli_close($con);
(4)ODBC
ODBC是一种应用程序编程接口(Application Programming Interface,API),使咱们有能力链接到某个数据源。
// 链接到 ODBC odbc_connect() //函数用于链接到ODBC数据源。四个参数:数据源名称,用户名,密码,可选的指针类型参数 odbc_exec() //函数用于执行SQL语句 odbc_fetch_row() //从结果集中返回记录 odbc_close() // 关闭ODBC链接
5、XML
xml用于数据的描述。XML文件描述了数据结构。在xml中没有预约义标签,须要定义本身的标签。
// DOM 解析 // SimpleXML PHP5中的新特性 <?php $xml = simplexml_load_file("text.xml"); echo $xml->getName() . "<br>"; foreach($xml->children() as $child){ echo $child->getName() . ":" . $child . "<br>"; } ?>
6、AJAX
AJAX = Asynchronous JavaScript And XML(异步 JavaScript 及 XML)
AJAX是一种技术,能够建立更好、更快且交互性更强的web应用程序。AJAX使用JavaScript在web浏览器和web服务器之间发送和接收数据。
var XMLHttp = null if (window.XMLHttpRequest){ XMLHttp = new XMLHttpRequest() } else if (window.ActiveXObject){ XMLHttp = new ActiveXObject("Microsoft.XMLHTTP") } // 仍是研究 JQuery 的 AJAX 吧 ... ... // AJAX只是提供异步的请求,服务器端的数据处理基本没什么变化 ... ...
7、其余
PHP基本内容算是差很少了吧。剩下的就是看下PHP常见框架,以及再熟悉下 regx,json,xpath ....
下面研究下 JQuery 啥的吧...