$a = 1
:变量bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
:常量php
echo
:用于输出字符串 print
:用与输出 echo 输出的速度比print快,echo没有返回值,print有返回值<?php $txt1="学习 PHP"; $txt2="RUNOOB.COM"; $cars=array("Volvo","BMW","Toyota"); echo $txt1; echo "<br>"; echo "在 $txt2 学习 PHP "; echo "<br>"; echo "我车的品牌是 $cars[1]"; ?>
说明:
1. 官方案例中使用了{$cars[1]}
,它与$cars[1]
等价。html
$array[0] =
这样的方式能够声明 > 2. array();
用与声明一个数组 > 3. 数组的嵌套:也就是array()的嵌套。 > 4. 数组的长度count($array)
函数获取 > 5. map 的对象 $array['nao']=
> 6.<?php // 二维数组: $cars = array ( array("Volvo",100,96), array("BMW",60,59), array("Toyota",110,100) ); ?>
同时数据能够表示mapjava
<?php $sites = array ( "runoob"=>array ( "菜鸟教程", "http://www.runoob.com" ), "google"=>array ( "Google 搜索", "http://www.google.com" ), "taobao"=>array ( "淘宝", "http://www.taobao.com" ) ); print("<pre>"); // 格式化输出数组 print_r($sites.); print("</pre>"); ?>
如何获取?
能够经过$sites[taobao][0]
来获取map中的数据node
与
java
同样mysql
while
while (条件) { 要执行的代码; }
do...while
do { 要执行的代码; } while (条件);
function functionName() { 要执行的代码; }
说明:参数能够设置默认值web
function fn($a = 1,$b = 2){ echo $a; echo '<br>'; echo $b; }
__LINKE__
当前行数__FILE__
__DIR__
__FUNCTION__
__CLASS__
__TRAIT__
:真正使用时在对应的重写的方法前加上trait
如<?php class Base { public function sayHello() { echo 'Hello '; } } trait SayWorld { public function sayHello() { parent::sayHello(); echo 'World!'; } } class MyHelloWorld extends Base { use SayWorld; } $o = new MyHelloWorld(); $o->sayHello(); ?> //结果:hello world
__METHOD__
__NAMESPACE__
:命名空间,namespace MyProject<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>
redis
preg_match()
sql
test_input()
- $_GET()与$_POST
对象数据库
string date ( string $format [, int $timestamp ] )
json
fopen()
案例:
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
fclose($file);
if (feof($file)) echo "文件结尾";
echo fgets($file). "<br>";
echo fgetc($file);
$_FILES
:表示上传文件的对象
\(_FILES["file"]["name"] - 上传文件的名称
\)_FILES["file"]["type"] - 上传文件的类型
\(_FILES["file"]["size"] - 上传文件的大小,以字节计
\)_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] - 由文件上传致使的错误代码
限制
setcookie(name, value, expire, path, domain);
说明:
1. name:key
2. value:值
3. expire :有效期
4. path:
5. domain : 主域
6. 获取cookie的值: $_COOKIE[]
session_start()
$_SESSION[]
unset()
isset()
session_destroy();
mail(to,subject,message,headers,parameters)
- to :接受者
- subject :主题
- message :消息
- headers :标题
- paramters :额外的参数
<?php $to = "someone@example.com"; // 邮件接收者 $subject = "参数邮件"; // 邮件标题 $message = "Hello! 这是邮件的内容。"; // 邮件正文 $from = "someonelse@example.com"; // 邮件发送者 $headers = "From:" . $from; // 头部信息设置 mail($to,$subject,$message,$headers); echo "邮件已发送"; ?>
安全校验
1. spamcheck()
:email 是否合法
2. filter_var($field, FILTER_SANITIZE_EMAIL);
3. filter_var($field, FILTER_VALIDATE_EMAIL)
json_encode
:
json_decode
:
$xmlDoc = new Document(); $xmlDoc->load('note.xml'); $x = $xmlDoc->documentElement; foreach ($x->childNodes AS $item) { print $item->nodeName . " = " . $item->nodeValue . "<br>"; }
$servername = "localhost"; $username = "username"; $password = "password"; $conn = new mysqli($servername, $username, $password); //$conn = mysqli_connect($servername, $username, $password); // 检测链接 if ($conn->connect_error) { die("链接失败: " . $conn->connect_error); } echo "链接成功";
$conn->query($sql) === TRUE //mysqli_query($conn, $sql) // mysqli_multi_query($conn, $sql):多条记录
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 建立链接 $conn = new mysqli($servername, $username, $password, $dbname); // 检测链接 if ($conn->connect_error) { die("链接失败: " . $conn->connect_error); } // 预处理及绑定 $stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES(?, ?, ?)"); $stmt->bind_param("sss", $firstname, $lastname, $email); // 设置参数并执行 $firstname = "John"; $lastname = "Doe"; $email = "john@example.com"; $stmt->execute(); $firstname = "Mary"; $lastname = "Moe"; $email = "mary@example.com"; $stmt->execute(); $firstname = "Julie"; $lastname = "Dooley"; $email = "julie@example.com"; $stmt->execute(); echo "新记录插入成功"; $stmt->close(); $conn->close();
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式为异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // 预处理 SQL 并绑定参数 $stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (:firstname, :lastname, :email)"); $stmt->bindParam(':firstname', $firstname); $stmt->bindParam(':lastname', $lastname); $stmt->bindParam(':email', $email); // 插入行 $firstname = "John"; $lastname = "Doe"; $email = "john@example.com"; $stmt->execute(); // 插入其余行 $firstname = "Mary"; $lastname = "Moe"; $email = "mary@example.com"; $stmt->execute(); // 插入其余行 $firstname = "Julie"; $lastname = "Dooley"; $email = "julie@example.com"; $stmt->execute(); echo "新记录插入成功"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) { echo $v; } $dsn = null;
$result->num_rows
获取当前的行数while($row = $result->fetch_assoc()) { echo "<br> id: ". $row["id"]. " - Name: ". $row["firstname"]. " " . $row["lastname"]; } } else { echo "0 个结果"; }
到此基础部分已经结束,可是呢,咱们的工做才刚刚开始,那么学完以后,咱们须要作的事情是什么呢?
- get,post 请求后台返回一个页面,获取参数
- 页面的文件上传功能
- 文件下载功能的实现
- 返回一个验证码功能
- 返回一个json 数据
- 设置session,设置cookie, 与redis 整合。
- 使用webservice
- 预约义的变量