博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
初识PHP(下)
阅读量:3924 次
发布时间:2019-05-23

本文共 5203 字,大约阅读时间需要 17 分钟。

主要内容:

1. php的array

2. php的文件引入
3. 获取前端表单传来的值
4. php数据库的相关操作
5. 数据库的增删改查


1. php的array

1.默认下标数组–下标就是有序的数字。

$arr = array("apple","banana","pear");echo $arr;//Arrayprint_r($arr);//Array ( [0] => apple [1] => banana [2] => pear )echo $arr[0];//apple

数组的遍历

for($i=0;$i
";}//apple banana pear

2.自行定义下标数组

$arr1=array("name"=>"张三","age"=>"18","sex"=>"男");//echo  $arr1[0];//报警告,无法获取;echo $arr1["name"];//张三

数组的遍历

foreach($arr1 as $key=>$value){
//$arr1:遍历的数组 $key(自定义的下标)=>$value(值) echo $key.":".$value;//name:张三 age:18 sex:男; echo "

";}

3.二维数组

$arr2=array(    array("zhangsan","18"),    array("lisi","19"),    array("wangwu","20"),);print_r($arr2);//Array ( [0] => Array ( [0] => zhangsan [1] => 18 ) [1] => Array ( [0] => lisi [1] => 19 ) [2] => Array ( [0] => wangwu [1] => 20 ) )echo $arr2[0][0];//zhangsan

4.利用二位数组做一个简单的接口

(接口:一个域名地址(url),包含需要的数据信息。)

$new =array(    array('title' => '我在塔子湖方舱的7天生活全记录', 'date' => '2020-3-3'),    array('title' => '战“疫”一线党旗红  00后已经长成大人模样', 'date' => '2020-3-3'),    array('title' => '抗疫复工“利器”凸显央企创新硬实力', 'date' => '2020-3-3'),    array('title' => '科技提升疫情防控战斗力  抓抗疫、保民生  求助  辟谣', 'date' => '2020-3-3'),    array('title' => '养老金发放、公务员面试……疫情防控期间这些事得知道', 'date' => '2020-3-3'));print_r($new);echo json_encode($new);echo "

";
json_encode():将数组转换成json格式(并且进行编码);echo json_decode();//将数组转换成json格式(并且进行解码);

JSON

JSON是一种数据格式,也可以叫做对象。
JSON是前后端交互最好理想的数据格式。

JSON的特点

JSON是一种轻量级的数据格式,不是js独有的。 独立文件。
JSON组成:简单值+数组+对象。
JSON里面的字符串一定要添加双引号。
JSON没有var,let,注释,分号等相关的js语法,代表数据。

举例说明:前端核心工作(渲染,用户体验,性能优化)

渲染–数据(JSON格式的接口)


2. php的文件引入

引入文件

引入共有文件
相当于array.php文件的代码就存在当前的位置
下面两种方式都可以

include 'array.php';//上下两方法都可以引入require 'array.php';print_r($news);

3. 获取前端表单传来的值

超级全局变量,获取前端表单传来的值。

$_GET[“表单的名称”] //获取前端用get方式提交的值

$_POST[“表单的名称”] //获取前端用post方式提交的值

注意:

- from.html文件需要单独写;

- from表单里面的action填写需要跳到的php文件;
- 提交按钮一定是submit;

$_GET[ ]

echo $_GET['username'];//获取表单username 输出的值 $user = $_GET['username']; //username:前端传来的表单的name值。 $pass = $_GET['password']; //username:前端传来的表单的password值。 $email = $_GET['email']; //username:前端传来的表单的email值。 echo "我的姓名是{
$user},我的密码是{
$pass},我的电子邮箱是{
$email}";

$_POST[ ]

echo $_POST['username'];$user = $_POST['username']; //username:前端传来的表单的name值。$pass = $_POST['password']; //username:前端传来的表单的password值。$email = $_POST['email']; //username:前端传来的表单的email值。echo "我的姓名是{
$user},我的密码是{
$pass},我的电子邮箱是{
$email}";

php数据库的相关操作

1.安装数据库的可视化软件–Navicat_for_MySQL–自由安装。

2.数据库概念:存储数据的仓库。

3.MySQL 数据库–关系型数据库。

4.关系数据库由关系组成,这些关系通常称为表格。顾名思义,一个关系就是一个数据的表格。电子数据表就是一种表格。

5.表

列(字段)
表中的每列都有惟一的名称,包含不同的数据。此外,每一列都有一个相关的数据类型。

行(记录)

表中的每一行代表一个客户。每一行具有相同的格式,因而也具有相同的属性。行也成为记录。获取多行,称之为记录集。

键(主键)

主键是唯一且不为空的,用以标识唯一的一条记录。

6.通过navicat创建数据库

数据库创建密码:对我们当前来说,可以不创建,自由选择。
通过wampserver下面的mysql进行设置–左键点击右下角的wampserver图标,选择mysql—mysql控制台
如果没有设置密码,直接回车,显示欢迎字符。否则输入密码。
具体输入下面的三行命令。
use mysql (定位到mysql表)
update user set password=password(“用户自由设置的密码”) where user=“root”; (设置密码)
flush privileges 刷新权限(重启wampserver)

第一步:将navicat和当前的php服务器进行连接。(少用点命令行)

-选择连接按钮
-设置连接名–自定义的
-主机名,端口,用户名都是使用默认的。
-设置密码,如果没有设置密码的用户直接设为空。

**第二步:**新建数据库和表

新建数据库:单击连接名称,右键找到新建数据库。
数据库名:通过英文单词或者拼接自由设置。
字符集:utf8 – UTF-8 Unicode (设置字符)
排序规则:utf8_general_ci (多语言版)

新建表:点击数据库名称,展开,找到表新建。

设计字段(表的列,名称自定义)+字段的数据类型等。

7.学习php代码控制mysql数据库

第一步:php连接数据库。
第二步:通过php代码执行sql语句,对数据库进行增删改查。

8.php安装相关的插件

php Intelephense

9.测试的尽量不要将php里面的文件夹里面文件的名称设为index,服务器优先找文件。项目中一定要。

10.服务器软件是phpstudy 连接数据库的用户名是:root 默认的密码是root 可以修改。


5. 数据库的增删改查

1.php连接数据库

//php连接数据库。//new mysqli(主机名,用户名,密码,数据库的名称);//链接数据库的类define("HOST", "localhost"); //主机名;define("USERNAME", "root"); //用户名;define("PASSWORD", ""); //密码 ,没有密码设置空为空;define("BANAME", "haha"); //数据库的名称;$conn = new mysqli(HOST, USERNAME, PASSWORD, BANAME);if ($conn->connect_error) {
//如果连接有问题,自定义报错信息 die("数据库连接错误,检查用户名和密码");};

2.php对代码mysql数据库进行增删改查。

sql语句:结构化查询语言。

2.1数据的操作–增;

$sql= "insert into(表名) (字段) values(值)";//php提供了两个加密密码函数;//sha1():将括号里面的字符串加密成40为的字符;//md5():将括号里面的字符串加密成32为的字符; $sql="insert  onesql values(null,'zhangsan',sha1(123456),'zhangsan@qq.com',NOW())"; $conn->query($sql);//执行sql语句; $hah ="insert onesql values(null,'wangwu',sha1(123456),'wangwu@qq.com',NOW())"; $conn->query("$hah");

表单的内容直接提交给数据库;

$user = $_POST["username"];$pass= sha1($_POST["password"]);//已经加密$email=$_POST["email"];$sql = "insert onesql values(null,'$user','$pass','$email',NOW())";//字符串加引号$conn->query($sql);echo "提交成功";

2.2数据库操作–删;

//$sql="delect from  '数据库表明' where 条件"$conn->query("delete from onesql where sid<=16");//where来限定条件删除;删除sid<=16的记录;$conn->query("delete from onesql where sid%2=0");//where来限定条件删除;删除偶数的sid的记录;

2.3数据库的修改–改

//$sql = "upadte '数据库表名' set 字段=值  where 条件"; $conn->query("update onesql set username='666' where sid=17"); $conn->query("update onesql set username='678',email='666@qq.com' where sid =19");

2.4数据库操作–查

//$sql = "select * from 'student'";$result = $conn->query("select*from onesql");$result->num_rows;获取记录集的条数$result->fetch_assoc();获取记录集里面的数据内容,按照数据顺序获取,而且会生成数组来存放!echo $result->num_rows;//10 十条数据;echo $result->fetch_assoc();//Arrar;

导出数据库内容做接口

$arr = array(); for ($i = 0; $i < $result->num_rows; $i++) {
$arr[$i] = $result->fetch_assoc(); } //echo $arr; //print_r($arr); echo json_encode($arr);//输出接口给前端用。

转载地址:http://grkgn.baihongyu.com/

你可能感兴趣的文章
诊断日志知多少 | DiagnosticSource 在.NET上的应用
查看>>
Chrome正在启用HTTP/3,支持IETF QUIC
查看>>
Net5 已经来临,让我来送你一个成功
查看>>
System.Text.Json中时间格式化
查看>>
怎么将SVG转成PNG(.NET工具包编写)
查看>>
为什么曾经优秀的人突然变得平庸?
查看>>
.NET 5 中的隐藏特性
查看>>
.NET5都来了,你还不知道怎么部署到linux?最全部署方案,总有一款适合你
查看>>
我画着图,FluentAPI 她自己就生成了
查看>>
BenchmarkDotNet v0.12x新增功能
查看>>
使用 .NET 5 体验大数据和机器学习
查看>>
C# 中的数字分隔符 _
查看>>
使用 docker 构建分布式调用链跟踪框架skywalking
查看>>
Github Actions 中 Service Container 的使用
查看>>
别在.NET死忠粉面前黑.NET5,它未来可期!
查看>>
Winform 进度条弹窗和任务控制
查看>>
部署Dotnet Core应用到Kubernetes(二)
查看>>
持续交付二:为什么需要多个环境
查看>>
FreeSql接入CAP的实践
查看>>
浅析 EF Core 5 中的 DbContextFactory
查看>>