PHP基础课程整理
一、简介
PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。俗话还说:“PHP是最好的语言~“。
二、简单基础语法
1.格式及变量声明
<?php $name = '张三'; $num = 1; $flo = 123.123; $check = true; ?>
2.基本输出
$name = '张三'; echo $name.'好好学习';//字符串拼接用 .
张三好好学习
$num = 123.123; echo gettype($num);//输出$num类型 var_dump($num);//var_dump()可以输出各种类型与值 define('A', 'a'); echo A;//a echo __FILE__; //获取当前文件路径及名字(包含扩展名) echo __LINE__; //获取当前代码行数 echo __DIR__; //获取当前文件路径 echo PHP_OS; //系统类型 echo mt_rand(1, 6); //1-6随机数
3.条件循环结构
for
echo '<table witdh="800" height="400" border="1" >'; for ($i=1; $i <10; $i++) { echo '<tr>'; for ($j=1; $j <= $i; $j++) { echo '<td>'.$i.'*'.$j.'='.$i*$j.'</td>'; } echo '</tr>'; } echo '</table>';//for循环与HTML混用
foreach
$arr[]=1; $arr[]=2; $arr[]=3;//$arr=[1,2,3] var_dump($arr); foreach ($arr as $value) { echo $value.'<br>'; }//foreach循环输出
while
$i=0; while ($i<3) { echo '这是第'.$i.'次'.'<br>'; $i++; }//while循环输出
switch
$num1 = 2; switch ($num1) { case '1': echo '1'; break; default: echo '!1'; break; }//switch分支
if-else
$num = 3; if ($num<2) { echo '小于2'; echo '<br />'; } elseif ($num<4) { echo '大于2小于4'; echo '<br />'; } else { echo '大于4'; }//if-else条件结构
4.函数function
function test() { echo __FUNCTION__; //获取函数名 } test();
含有默认参数
function showname($name='张三',$sex='男'){ echo '我叫'.$name.',性别:'.$sex.'<br>'; } showname('zzh','女'); showname();//默认参数
三、php联动mysql数据库
1.DOS下基础命令
(1)连接mysql数据库
mysql -uroot -p
(2)显示所有库
show databases;
(3)创建一个数据库 bbs
create database bbs;
(4)删除一个数据库 bbs
drop database bbs;
(5)使用一个数据库 bbs
use bbs;
(6)在该数据库下创建表 user
create table user(id int ,username varchar(40) ,password varchar(32));
(7)显示该数据库下所有表
show tables;
(8)显示创建表的命令语句
show create table user;
(9)显示创建数据库的命令语句
show create database bbs;
(10)删除user表
drop table user;
(11)更改表名
alter table user rename user_table;
(12)查看表结构
dese user;
(13)更改表字段名
alter table user change password pass varchar(45); //将表中password字段改名为pass并修改类型为varchar(45)
(14)仅更改表字段类型
alter table user modify pass varchar(32);
(15)删除表字段
alter table user drop pass;
(16)增加表字段[在某字段后]
alter table user add password varchar(32) [after username];
(17)为字段增加普通索引
alter table bbs_user add index(age);
(18)为字段增加唯一索引
alter table bbs_user add unique(password);
(19)为字段增加全文索引
alter table bbs_user add fulltext(address);
(20)为字段增加主键索引
alter table bbs_user add primary key(id);
(21)查看全部索引
show index from bbs_user;
(22)查看当前表所在数据库名
select database();
2.增删改查
(1)插入数据
insert into bbs_user(age,username,password,email,address) values(13,'张志浩','123','923654240@qq.com','北京);
(2)删除数据
delete from bbs_user where username='张志浩';
(3)更新数据
update bbs_user set username='金大伟',age=88 where username='金大'; //将username='金大'的记录中username设置为'金大伟',age设置为88
(4)查找数据
select * from bbs_user;//查询所有记录 select username,password from bbs_user;//查询指定列 select * from bbs_user where id>=2;//条件查询 select * from bbs_user where id between 2 and 3;//条件查询 select * from bbs_user where id in(2,3);//条件查询,id=2,3 select * from bbs_user where username like '金%%';//模糊查询 select * from bbs_user where password='123123' or password='1231230';//条件查询 select distinct username from bbs_user;//去除重复值 select * from bbs_user order by age;//升序 select * from bbs_user order by age desc;//降序 select * from bbs_user limit 1,2;//从第一条往后取2条记录 select * from bbs_user group by email;//保留最后一次出现的记录 select count(*) from bbs_user;//表中记录总数 select username as name from bbs_user;//起别名 select count(*) as count from bbs_user;//起别名 select username,goodname from bbs_user inner join bbs_good on bbs_user.goodid=bbs_good.goodid;//内联查询
3.php一次标准数据库操作
(1)连接数据库
$link = mysqli_connect('localhost:3308', 'root', ''); //mysqli_connect('数据库地址','数据库用户名','密码') //我本机装有MariaDB,使用了3306端口(0-0...)
(2)判断是否连接成功
if (!$link) { exit('数据库连接失败!'); }
(3)设置字符集
mysqli_set_charset($link, 'utf8');
(4)选择数据库
mysqli_select_db($link, 'bbs');
(5)设置sql语句
$sql = "select * from bbs_user"; //参见数据库增删改查语句
(6)发送sql语句
$res = mysqli_query($link, $sql);
(7)处理结果
$resault = mysqli_fetch_assoc($res);//1.执行一次读取一行,返回关联数组 $resault = mysqli_fetch_row($res); //1.执行一次读取一行,返回索引数组 while ($resault = mysqli_fetch_assoc($res)) { var_dump($resault); } //2.循环读取所有行,返回关联数组 while ($resault = mysqli_fetch_row($res)) { var_dump($resault); } //2.循环读取所有行,返回索引数组 $resault=mysqli_num_rows($res); //3.返回数据总行数 $resault=mysqli_affected_rows($link); //4.返回受影响的总行数 $resault=mysqli_insert_id($link); //5.返回当前数据自增id //根据需要选择一种处理方式
(8)关闭连接
mysqli_close($link);
四、综合写一个小Demo
1.实现数据增删改查及分页
(1)效果
(2)主要代码
来源:https://www.cnblogs.com/beibingji/p/12294950.html