认识php
2019-04-25 本文已影响0人
进击的大东
认识php
在网页中使用php输出helloword
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP 页面</title> </head> <body> <div>Welcome to PHP Page</div> <?php echo "<div>hello word</div>"; ?> </body> </html>
走进PHP
PHP中的变量、字符串
<body> <div>Welcome to PHP Page</div> <?php //php的变量申明 //php的变量名由字符数字字母下划线组成,并且不能以数字开头,变量名对大小写敏感 $num = 123; // echo $num;; //php中的字符串拼接用. echo '<div>编号为'.$num.'</div>'; //php中的单引号,对于其中的变量当作普通字符串 echo '编号为:$num'; //php双引号会正常解析变量 echo "<div>编号为:$num</div>"; ?> </body>
数组
<body> <div>Welcome to PHP Page</div> <?php $arr=array(1,2,3,4,5); print_r($arr); $arr1=array("hello","hi"); //print_r输出复杂类型 print_r($arr1); $arr2=array("username"=>"zhangsan","age"=>"12","sex"=>"male"); echo "<br>"; print_r($arr2); //var_dump()输出更详细的内容,调试有用,开发使用不多 var_dump($arr1); //php二维数组 $arr=array(); $arr[0]=array(1,2,3,4); $arr[1]=array(11,22,33,44); $arr[2]=array("hello","word","php comming","wow"); print_r($arr); ?> </body>
数据类型
<?php //字符串 $x = "Hello world!"; echo $x; echo "<br>"; $x = 'Hello world!'; echo $x; //整型 $x = 5985; var_dump($x); echo "<br>"; $x = -345; // 负数 var_dump($x); echo "<br>"; $x = 0x8C; // 十六进制数 var_dump($x); echo "<br>"; $x = 047; // 八进制数 var_dump($x); //浮点型 $x = 10.365; var_dump($x); echo "<br>"; $x = 2.4e3; var_dump($x); echo "<br>"; $x = 8E-5; var_dump($x); //布尔型 $x=true; $y=false; //数组 $cars=array("Volvo","BMW","Toyota"); var_dump($cars); foreach($cars as $key => $value){ echo $key.'==='.$value.'<br>'; } //对象 class Car { var $color; function __construct($color="green") { $this->color = $color; } function what_color() { return $this->color; } } ?>
函数
<?php //自定义函数,可以先调用后申明,php函数不区分大小写 $before=foo('hi'); function foo($info){ return $info; } $ret=foo('hi'); echo $ret; //系统函数 $arr=array(111,222,333); $arra=array("name" => "tom","age"=>"25","sex"=>"man"); $test=json_encode($arr); $test1=json_encode($arra); echo $test; echo "<br>"; echo $test1; ?>
预定义变量post和get请求
-
get方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP 预定义变量</title> <script type="text/javascript"> </script> </head> <body> <div>PHP预定义变量get和post</div> <?php $f=$_GET['flag'];//得到url地址中传递的参数 echo '<span>'.$f.'</span>' ?> </body> </html>
-
post方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Post登录测试</title> </head> <body> <div> <form action="./prevariablePost.php" method="post"> 用户名:<input type="text" name="username"><br> 密码:<input type="text" name="password"> <input type="submit" value="登录"> </form> </div> </body> </html> //php <?php $uname=$_POST['username']; $upass=$_POST['password']; header("Content-Type:text/plain; charset=utf-8"); if($uname=='admin' & $upass=='123'){ echo "登录成功"; }else{ echo "用户名或者密码错误"; } ?>
Ajax请求get与post
-
get
//html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax登录演示</title> <script type="text/javascript"> window.onload=function () { // body... var btn=document.getElementById('btn'); btn.onclick=function () { var username=document.getElementById('username').value; var password=document.getElementById('password').value; //使用ajax发送请求需要如下几步 //创建xmlHttpRequest对象 var xhr=new XMLHttpRequest(); //使用encodeURI对参数编码,防止参数乱码 //准备发送 xhr.open('get','./check.php?username='+username+"&password="+password,true); //执行发送动作 xhr.send(null); //指定回调函数 xhr.onreadystatechange=function () { // body... if(xhr.readyState==4){ if(xhr.status==200){ var data=xhr.responseText; var info=document.getElementById('info'); if(data=='1'){ info.innerHTML='登录成功'; }else if(data=='2'){ info.innerHTML='用户名密码错误'; } } } } } } </script> </head> <body> <form> 用户名:<input type="text" name="username" id="username"><span id="info"></span><br> 密码:<input type="text" name="password" id="password"> <input type="button" value="登录" id="btn"> </form> </body> </html> //php文件 <?php $uname= $_GET['username']; $pw= $_GET['password']; if($uname=='admin'&&$pw=='123'){ echo "1"; }else{ echo "2"; } ?>
-
post
//html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax登录演示</title> <script type="text/javascript"> window.onload=function () { // body... var btn=document.getElementById('btn'); btn.onclick=function () { var username=document.getElementById('username').value; var password=document.getElementById('password').value; //使用ajax发送请求需要如下几步 //创建xmlHttpRequest对象 var xhr=new XMLHttpRequest(); //准备发送 var param='username='+username+"&password="+password; //post请求参数通过send传递,需要设置请求头信息 xhr.open('post','./checkpost.php',true); xhr.setRequestHeader('Content-Type',"application/x-www-form-urlencoded"); //执行发送动作 xhr.send(param);//post请求参数.不需要编码 //指定回调函数 xhr.onreadystatechange=function () { // body... if(xhr.readyState==4){ if(xhr.status==200){ var data=xhr.responseText; var info=document.getElementById('info'); if(data=='1'){ info.innerHTML='登录成功'; }else if(data=='2'){ info.innerHTML='用户名密码错误'; } } } } } } </script> </head> <body> <form> 用户名:<input type="text" name="username" id="username"><span id="info"></span><br> 密码:<input type="text" name="password" id="password"> <input type="button" value="登录" id="btn"> </form> </body> </html> //php文件 <?php $uname= $_POST['username']; $pw= $_POST['password']; if($uname=='admin'&&$pw=='123'){ echo "1"; }else{ echo "2"; } ?>
xml与json数据处理
-
xml数据
//数据内容 <?xml version="1.0" encoding="utf-8" ?> <booklist> <book> <name>三国演义</name> <author>罗贯中</author> <desc>一个群雄争霸的年代</desc> </book> <book> <name>水浒传</name> <author>施耐庵</author> <desc>108条好汉上梁山的故事</desc> </book> <book> <name>西游记</name> <author>吴承恩</author> <desc>神话故事,师徒四人取经的故事</desc> </book> </booklist> //解析数据 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax登录演示</title> <script type="text/javascript"> window.onload=function () { // body... var btn=document.getElementById('btn'); btn.onclick=function () { var username=document.getElementById('username').value; var password=document.getElementById('password').value; //使用ajax发送请求需要如下几步 //创建xmlHttpRequest对象 var xhr=new XMLHttpRequest(); //准备发送 var param='username='+username+"&password="+password; //post请求参数通过send传递,需要设置请求头信息 xhr.open('post','data.xml',true); xhr.setRequestHeader('Content-Type',"application/x-www-form-urlencoded"); //执行发送动作 xhr.send(param);//post请求参数.不需要编码 //指定回调函数 xhr.onreadystatechange=function () { // body... if(xhr.readyState==4){ if(xhr.status==200){ var data=xhr.responseXML; var booklist=data.getElementsByTagName('booklist'); var books=booklist[0].children; var book1=books[0]; var name=book1.children[0].innerHTML; var author=book1.children[1].innerHTML; var desc=book1.children[2].innerHTML; console.log(booklist); console.log(name,author,desc); } } } } } </script> </head> <body> <form> 用户名:<input type="text" name="username" id="username"><span id="info"></span><br> 密码:<input type="text" name="password" id="password"> <input type="button" value="登录" id="btn"> </form> </body> </html>
-
json数据
//数据内容 { "name":"zhangsan", "age":12, "lover":["coding","swiming","singing"], "friend":{ "high":"180cm", "weight":"80kg" } } //数据解析 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax登录演示</title> <script type="text/javascript"> window.onload=function () { // body... var btn=document.getElementById('btn'); btn.onclick=function () { var username=document.getElementById('username').value; var password=document.getElementById('password').value; //使用ajax发送请求需要如下几步 //创建xmlHttpRequest对象 var xhr=new XMLHttpRequest(); //使用encodeURI对参数编码,防止参数乱码 //准备发送 xhr.open('get','data.json',true); //执行发送动作 xhr.send(null); //指定回调函数 xhr.onreadystatechange=function () { // body... if(xhr.readyState==4){ if(xhr.status==200){ var data=xhr.responseText; console.log(data); var d=JSON.parse(data); console.log(d.age); console.log(d.name); console.log(d.friend.weight); } } } } } </script> </head> <body> <form> 用户名:<input type="text" name="username" id="username"><span id="info"></span><br> 密码:<input type="text" name="password" id="password"> <input type="button" value="登录" id="btn"> </form> </body> </html>