PHP基础入门,简单实现前端后端交互_不落不息的博客-程序员宅基地_php前后端交互

技术标签: 后端语言  php  ajax  

<?php?>、echo

php相关代码都要写在php和后面的?之间
echo:就是向网页中输出字符串

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>PHP to hello world</div>
	<?php
	// 所有的php代码都要写在这里
	// echo 就是向网页输出字符串
	/*
	段注释
	*/
	echo "<div>这里是一个最简单的php动态网站</div>";
	?>
</body>
</html>

变量及区分单双引号

php变量由$符号开始,后跟变量名。
变量名由字母数字下划线组成,不能以数字开头,区分大小写
字符串由点连接

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>PHP to hello world</div>
	<?php
	 $num = 123;
	 // php中单引号和双引号不同
	 echo "<div>变量值为:$num</div>";//变量输出是123
	 echo '<div>变量值为:$num</div>';//变量输出是$num
	 // 字符串的拼接,php由点连接,JavaScript由+连接
	 echo "<div>变量值为:".$num."</div>";
	?>
</body>
</html>

创建数组、echo、print_r()、var_dump()区别

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<?php
	// 创建数组
	$arr=array(1,2,3,4);
	$arr1 =array("name","yes");
	$arr2 =array("key"=>"value","word"=>"yes");
	// echo $arr;-//输出报错
	echo $arr[0]; //1
	echo "\n";    // 不识别\n换行
	echo $arr[1];
	echo "<br>";  //换行
	echo $arr[2];
	echo "<br>";
	print_r($arr1);//Array ( [0] => name [1] => yes )
	echo "<br>";
	var_dump($arr2);//比print_r()打印详细点
	?>
</body>
</html>

二维数组

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<?php
	// 创建二维数组
	$arr =array();
	$arr[0] =array(1,2,3);
	$arr[1]=array(4,5,6);
	$arr[2]=array(7,8,9);
	print_r($arr);
	// Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) 
	// 	[1] => Array ( [0] => 4 [1] => 5 [2] => 6 ) 
	// 	[2] => Array ( [0] => 7 [1] => 8 [2] => 9 ) 
	// )
	$arr1 =array(10);
	$arr1["house1"] =array("area"=>234,"room"=>4);
	$arr1["house2"] =array("area"=>334,"room"=>6);
	echo "<br>";
	print_r($arr1);
	// Array ( [0] => 10 [house1] => Array ( [area] => 234 [room] => 4 ) 
	// 	[house2] => Array ( [area] => 334 [room] => 6 ) )
	?>
</body>
</html>

常见数据类型及调用函数

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<?php
	$arr =array(1,2,3,4);
	//gettype()函数
	echo "<br>";
	echo gettype($arr);//array
	$num =23;
	echo "<br>";
	echo gettype($num);//integer
	$num =23.3;
	echo "<br>";
	echo gettype($num);//double
	$bool =true;
	echo "<br>";
	echo gettype($bool);//boolean
	echo "<br>";
	//for循环,count计算数组长度
	for($i=0;$i<count($arr);$i++){
		print_r($arr[$i]);
	}
	echo "<br>";
	//foreach遍历
	foreach ($arr as $key => $value) {
		echo $key."--->".$value."<br>";
		}
	?>
</body>
</html>

自定义函数

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<?php
	// 自定义函数,函数名不区分大小写,与js的不同
	$res=FunName(13,3);//先调用不受影响,与js类似
	echo $res;  
	echo "<br>";        
	function funName($num,$num1){
		return $num+$num1;
	}
	$res=funName(23,3);
	echo $res;
	echo "<br>";
	//系统函数,将数组变为json数据
	// $arr =array(1,2,3);//[1,2,3]
	$arr =array("key"=>"23","sum"=>"ouver");//{"key":"23","sum":"ouver"}
	$json =json_encode($arr);
	echo $json;
	?>

</body>
</html>

http协议常用请求方式及在php中的用法

  • get 用来从服务器获取数据(获取的参数一般用来查询)
  • post 添加数据
  • put 修改数据
  • delete 删除数据
		<?php
		/*
           获取从网页获取的数据,?连接
           http://jditems.com/php/page.php?flag=3
		*/
		$var=$_GET['flag'];
		echo "<p>$var</p>";
		?>

post小用例

目录:在这里插入图片描述
page.php

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<div>
		<!-- form默认method为get -->
		<form action="page2.php" method="post">
		用户名:<input type="text" name="username"><br>
		密  码:<input type="password" name="pw"><br>
		<input type="submit" value="提交">
		</form>
	</div>

</body>
</html>

paga2.php
在这里插入图片描述

网页和服务器简单交互案例

根据学号查询成绩
page.php

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>PHP页面</title>
</head>
<body>
	<div>测试页面</div>
	<div>
		<!-- form默认method为get -->
		<form action="page2.php" method="post">
		学  号:<input type="text" name="id"><br>
		<input type="submit" value="提交">
		</form>
	</div>

</body>
</html>

page2.php

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>后台</title>
</head>
<body>
	<?php
    // 相当于后台
    $arr =array();
    $arr['100'] =array("name"=>"小红","chinese"=>"120","math"=>"120","english"=>"134");
    $arr['102'] =array("name"=>"小名","chinese"=>"124","math"=>"70","english"=>"124");
    $arr['112'] =array("name"=>"小东","chinese"=>"110","math"=>"130","english"=>"90");
    $id =$_POST['id'];
    $score = $arr[$id];
    echo "<ul><li>姓名:$score[name]</li><li>语文:$score[chinese]</li><li>数学:$score[math]</li><li>英语:$score[english]</li></ul>";
?>
</body>
</html>
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43416215/article/details/108891069

智能推荐

win下python3与C++进行socket通信_长虹剑的博客-程序员宅基地

当前自己做的一个东西是有关3D显示和算法控制的。 写算法的时候希望用python,而显示3D网格这些希望用opengl。一开始打算都用python,可是python的那些vtk,pyqt4似乎在python3上不好配置,总之自己弄了很长时间最后放弃了,就打算采用标题的这种方法,本以为这个在网上能够方便地搜到,没想到找了半天找不到合适的,于是简单拼凑出一个示例,记录一下。不知道要实现数据传输有没有更

玩Android(flutter + fish_redux)_小呆呆666的博客-程序员宅基地

github:https://github.com/CNAD666/flutter_wan注:该项目为Flutter + fish_redux,页面基本均是fish_redux搭建第一版 首页banner展示,首页文章分页加载,完成下拉刷新,上拉加载 完成知识体系和体系详情模块 完成导航模块 完成项目模块 侧栏布局完成,功能留坑,方便添加预计第二版 搜索功能 收...

OpenStack部署工具总结_贾诩是也的博客-程序员宅基地_openstack的常用部署工具

目前感觉比较简单直观的部署工具有RDO、devstack、Fuel等:1. RDO https://OpenStack.redhat.com/QuickstartREDHAT出品,支持Redhat、CentOS等系统。RDO基于puppet部署各个组件,支持单节点或多节点部署,在Redhat系操作系统上使用非常方便。2. devstack http://docs

代表JAVA线程优先级的常量是_JAVA多线程04-基础篇-优先级_逆光的温暖的博客-程序员宅基地

一、线程优先级线程优先级的范围是1~10,默认优先级是5,线程优先级的主要作用是让调度器优先调度高优先级线程,但这不意味着低优先级线程得不到执行,通常情况不需要修改线程优先级,Thread类中有3个优先级的常量:二、源码分析public final void setPriority(int newPriority) {ThreadGroup g;//线程所属的线程组checkAccess();//...

Machine Learning(Andrew)Week8(上)_DanaMeng的博客-程序员宅基地

Unsupervised learning introduction前面说的都是有监督学习(Supervised learning),是指训练数据每一笔都是成对的(x1,y1),(x2,y2)……就好像我们备考的时候,做习题题目和答案都提供给你。而machine learning中是指提供的数据有贴标签,输出的值贴上了答案。现在要说的无监督学习(Unsupervised learning)

SpringBoot整合SpringSecurity_流浪所的博客-程序员宅基地

SpringBoot整合SpringSecurity前言:在web开发中,安全第一位!过滤器,拦截器!功能性需求:否做网站:安全应该在什么时候考虑?设计之初!漏洞,隐私泄露~架构一旦确定~Shiro、SpringSecurity:很像~除了类不一样,名字不一样认证,授权(vip1、vip2、vip3)功能权限访问权限菜单权限拦截器、过滤器:大量的原生代码~1.安全简介在 Web 开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期

随便推点

c++ 如何使用第三方的library_weixin_30755393的博客-程序员宅基地

感谢以下参考资料:  关于如何使用第三方的库:    http://stackoverflow.com/questions/21942545/how-to-install-third-party-libraries    http://www.learncpp.com/cpp-tutorial/a3-using-libraries-with-codeblocks/    http:...

CSS——盒子居中显示_weixin_30877493的博客-程序员宅基地

嵌套中个的子盒子使用了绝对定位,父盒子使用了相对定位。那么子盒子如何居中显示:1、距离左偏离50%2、margin-right子盒子宽度的一半&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt; &lt;meta charset="utf-8" /&gt; &lt;title&gt;&lt;/title&gt; ...

设计一个string类,通过重载“+=”运算符,实现对两个string类对象m1,m2的操作。..._iteye_3224的博客-程序员宅基地

#include&amp;lt;iostream.h&amp;gt;class string{private:int x,y;public:string(){}string(int a,int b){x=a;y=b;}void display(){cout&amp;lt;&amp;lt;&quot;(&quot;&amp;lt;&amp;lt;x&amp;lt;&amp;lt;&quot;,&quot;&amp;lt;&amp;lt;y&amp;lt;&a

javascript ,从mozilla 官方网站学习语法,非常不错_freewebsys的博客-程序员宅基地_javascript mozilla

js代码中出现大量的 set 代码其实是冗余的本来就是动态语言,不能像java那样去写:this.xxx = xxx 这样不优雅。要用 forEach去写:```let tmpDataForm = this.dataForm //赋值变量,修改tmpDataForm即可 Object.keys(tmpDataForm).forEach(function(key){ tmpDataForm[key] = '' })```

2019年13周 Kafka Connect for Hbase_小参的博客-程序员宅基地

Kafka Connect for Hbase官网地址说明文档特性要求假设PropertiesExample connector.properties file部署下载hbase-sinkhbase-site.xml to classpath建hbase表官网地址https://www.confluent.io/connector/kafka-connect-hbase-sink/说明文档...

pre-processing预处理- related paper_kl195375的博客-程序员宅基地

1.&lt; malware detection based on deep learning algorithm&gt; -Ding yuxin Zhu siyiPE parser: PE解析器 IDA pro 一种递归下降的反汇编器解压缩文件:PEiD

推荐文章

热门文章

相关标签