欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

《PHP入门篇之使用教程》

程序员文章站 2022-06-22 11:41:23
PHP一种编程语言,常用于web开发、开发网站安装配置重置端口命令php变量$a = 18;数据类型:int string boolean变量:1)以$符号开头2)a-z A-Z 0-9 _3)区分大小写4)数字不能开头预定义变量$_GET$_POSTindex.php?abc=1$f = $_GET[‘abc’];解决编码:header(‘Content-Type:text/plain; charse...

PHP

一种编程语言,常用于web开发、开发网站

<?php echo "hello world"; ?>

安装配置

重置端口命令

php变量

$a = 18;

数据类型:int string boolean

变量:
1)以$符号开头
2)a-z A-Z 0-9 _
3)区分大小写
4)数字不能开头

预定义变量

$_GET
$_POST

index.php?abc=1
$f = $_GET[‘abc’];

解决编码:header(‘Content-Type:text/plain; charset=utf-8’);

php数学运算符

      • /(除,不是取整) %

数据类型

字符串、整型、浮点型、布尔型、数组、对象、null

案例

被除数/除数 = 商。。。余数

函数

自定义函数(函数名不区分大小写)

系统函数gettype()
json_encode()(将对象、数组转换成json格式字符串)
json_encode(对象);
json_decode()(将字符串转换成对象)
json_decode(json格式字符串变量,true)

function foo($info) {
return $info;
}

内容输出

echo输出简单数据类型
print_r()输出复杂数据类型
var_dump()输出详细信息

比较运算符

= < <= != == === !==

逻辑运算符

&& || .
.----字符串拼接的字符

var_dump(逻辑结构);

^—异或

三大控制结构

顺序 选择 循环
while

for循环

break和continue

break—结束循环
continue—跳过当次循环

字符串

string
单引号和双引号
单引号对于其中的变量当作普通的字符串来处理,
双引号对于变量会解析成数值
字符转义’ \
识别变量
运算速度

数组

$a = array(1 => ‘张三’);

foreach遍历数组
foreach(数组 as $key => $value){}
array_keys(数组);//获取数组的keys(键)

print_r(数组);

foreach(数组 as 值){
//内容
变 量 − > i d / / 代 表 变量->id//代表 >id//变量的id
}

增加

a r r = a r r a y ( ) ; w h i l e ( ( arr = array(); while(( arr=array();while((result = mysqli_fetch_assoc(KaTeX parse error: Expected '}', got 'EOF' at end of input: … //print_r(result);
// a r r = a r r a y ( arr = array( arr=array(arr,$result);
$arr[] = $result;
}

array_push(数组, 需要添加的数据);

$arr = array(1,2,3,4,5);

$arr = array(‘a’=> ‘1’, ‘b’=> ‘2’, ‘c’=> ‘3’);

count()内置函数,用来计算数组的长度

array_key_exists(key, 数组)判断数组中是否有key这个值

返回值:存在----1

mysql操作

phpinfo();—查看php相关的配置信息

show warnings;

数组的字符串键名key在sql语句里是不能加引号的

mysqli_connect()

–连接数据库
$result = mysqli_connect(‘localhost’,‘root’,‘root’,‘test’);//返回obj对象(通道对象,通道标识)

面向对象风格
mysqli::__construct()

			面向过程化风格
				mysqli_connect(url,用户名,密码,数据库库名,端口,..)

设置字符集

//设置字符集,查询mysqli_query(通道对象,查询语言,…);
mysqli_query($result,‘set names utf8’);
//mysqli::query();*/

		/*$result = mysql_connect('localhost','root','root');
		mysql_query('use test');//选库
		mysql_query('set names utf8');
		var_dump($result);//通道标识 资源*/

增删改查

  • $sql = ‘insert into user(uid,name,age) values(13,“小米”,20)’;

      	$res = mysqli_query($result,$sql);
      	var_dump($res);
    

    //增
    a d d = " i n s e r t i n t o l e a v e m s g ( n a m e , e m a i l , c o n t e n t ) v a l u e s ( ′ add = "insert into leavemsg(name,email,content) values(' add="insertintoleavemsg(name,email,content)values(_POST[name]’,’ P O S T [ e m a i l ] ′ , ′ _POST[email]',' POST[email],_POST[content]’)";
    r e s = m y s q l i q u e r y ( res = mysqli_query( res=mysqliquery(link,$add);

  • //删
    $sql = “delete from user where uid = 13”;
    r e s = m y s q l i q u e r y ( res = mysqli_query( res=mysqliquery(result, s q l ) ; v a r d u m p ( sql); var_dump( sql);vardump(res);

  • //改
    /$sql = ‘update user set name = “小号”,age = 15 where uid = 13’;
    r e s = m y s q l i q u e r y ( res = mysqli_query( res=mysqliquery(result, s q l ) ; v a r d u m p ( sql); var_dump( sql);vardump(res);
    /

  • //查询
    $sql = “select * from user”;
    m y s q l i r e s u l t = m y s q l i q u e r y ( mysqli_result = mysqli_query( mysqliresult=mysqliquery(result,$sql);//结果标识(结果对象)

      	for($i=1;$i<7;$i++){
      		$a = mysqli_fetch_assoc($mysqli_result);	
      		//print_r($a);
      		foreach($a as $key => $value){
      			echo $key,':',$value,'<br/>';
      		}
      	}
    

    mysqli_fetch_assoc(结果标识);–面向过程风格

    mysqli_result::fetch_assoc(void)—面向对象风格

mysqli_fetch_array

–返回关联数组和索引数组的合成数组

mysqli_fetch_assoc

—返回关联数组

实现多行输出
r e s u l t = m y s q l i f e t c h a s s o c ( result = mysqli_fetch_assoc( result=mysqlifetchassoc(res);
while(KaTeX parse error: Expected '}', got 'EOF' at end of input: …){ print_r(result);
r e s u l t = m y s q l i f e t c h a s s o c ( result = mysqli_fetch_assoc( result=mysqlifetchassoc(res);
}

mysqli_fetch_row

—返回由value组成的数组(索引数组)(枚举数组)(数字数组)

函数

  • mysqli_error

    –返回上一个MySQL操作产生的文本错误信息

    /*
    检查出错信息

      	*/
      	$link = mysqli_connect('localhost','root','root','test');
      		
      	mysqli_query($link,'set names utf8');
    
      	$sql = 'select * frm user';
      	$res = mysqli_query($link,$sql);
    
      	//var_dump($res);//false
      	if($res){
      		var_dump($res);
      	}else {
      		$result = mysqli_error($link);
      		//echo $result;
      		//print_r($result);
      		var_dump($result);
      		exit();//退出
      	}
    
  • mysqli_insert_id

    –取得上一步insert操作产生的id值

    /*
    获取主键

      	*/
    
      	$link = mysqli_connect('localhost','root','root','test');
      	mysqli_query($link,'set names utf8');
    
      	$sql = 'insert into user(uid) values(8)';
      	$res = mysqli_query($link,$sql);
    
      	if(!$res){
      		echo mysqli_error($link);
      		exit();
      	}
    
      	echo mysqli_insert_id($link);//8
    
  • mysqli_affected_rows

    –取得上一步mysql操作产生所影响的记录行数

    /*
    获取影响行数

      	*/
    
      	$link = mysqli_connect('localhost','root','root','test');
      	mysqli_query($link,'set names utf8');
    
      	$sql = 'insert into user(uid) values(9)';
      	$res = mysqli_query($link,$sql);
    
      	if(!$res){
      		echo mysqli_error($link);
      		exit();
      	}
    
      	echo mysqli_affected_rows($link);//1
    
  • mysqli_close

    –关闭mysql连接

    /*
    关闭数据库连接

      	*/
    
      	$link = mysqli_connect('localhost','root','root','test');
      	mysqli_query($link,'set names utf8');
    
      	$sql = 'delete from user where uid >= 6';
      	$res = mysqli_query($link,$sql);
    
      	if(!$res){
      		echo mysqli_error($link);
      		exit();
      	}
    
      	echo mysqli_close($link);//1
      	//var_dump($link);//报错
    

报错级别

屏蔽错误
error_reporting(E_ALL ^ E_DEPRECATED);

notice

–注意

warning

–警告

fatal error

–致命错误

deprecated

–不推荐

fopen(file,mode)

打开文件或URL路径
mode:
r–read
r+读写
w–写
w+读写
a–写
a±-读写
x–写入
x+读写
c–
c±-

opendir(path,…)

打开目录

正则

preg_match_all

<?php $str = "hi,this his histroy"; $pattern = '/hi/'; preg_match_all($pattern,$str,$res);//全局正则匹配 print_r($res);//结果 ?>

preg_split( p a t t e r n , pattern, pattern,str)

<?php $str = 'tommorw is another day,o2o ,you dont bird me i dont bird you'; $pattern = '/\W+/'; print_r(preg_split($pattern,$str));//分割字符串 ?>

单词匹配

<?php $str = "hi,this is some history book"; $pattern = '/\bhi\b/'; preg_match_all($pattern,$str,$res); print_r($res); ?>

preg_replace

<?php $str = 'tommorw is another day,o2o ,you dont bird me i dont bird you'; $pattern = '/\s+/'; preg_replace($pattern,' ',$str);//替换 echo $str; ?>

贪婪模式与非贪婪模式

<?php $str = 'ksda good goooood good kl s ja dfs dk'; $pattern = '/g.+d/';//贪婪模式 preg_match_all($pattern,$str,$res); print_r($res); ?> <?php $str = 'ksda good goooood good kl s ja dfs dk'; $pattern = '/g.+?d/';//非贪婪模式 preg_match_all($pattern,$str,$res); print_r($res); ?>

后向引用

<?php $str = 'txt hello high bom mum aifjfa bdjhifb cjkjkdfc'; $pattern = '/\b([a-zA-Z])\w+\1\b/';//后向引用 preg_match_all($pattern,$str,$res); print_r($res); ?>

\1 引用前面的([a-zA-Z])

  • 案例

    <?php $str = '13800013800,18610886812'; $pattern = '/(\d{3})\d{4}(\d{4})/';//后向引用 print_r(preg_replace($pattern,'\1****\2',$str)); ?>

curl

<?php $th = curl_init(); curl_setopt($th,CURLOPT_URL,"http://www.baidu.com"); curl_exec($th); curl_close($th); ?>

获取百度首页

留言板制作

index.php优先级更高

检测是否有数据提交

$_POST–超全局数组,用来接收表单提交的数据

empty();----检测变量的值是否为空

$_POST方法

// P O S T 超 全 局 数 组 , 专 门 用 来 接 收 表 单 提 交 过 来 的 数 据 p r i n t r ( _POST超全局数组,专门用来接收表单提交过来的数据 print_r( POST,printr(_POST);//post必须大写
//判断变量是否为空?
var_dump(empty($_POST));//false

$_POST[‘参数’];

引入前台页面

//引入前台页面
require ‘./index.html’;

include(’./meglist.html’);

// 引入数据文件
require(’./selectdata.php’);

地址栏传参

地址栏传参$_GET–超全局数组

header()—跳转

//跳转
header(‘location:meglist.php’);

sublime

介绍

一个代码编辑器,可以编写HTML、PHP、js、css等等文件。

优点

1)跨平台
2)扩展性强
3)体积小,运行速度快
4)支持编译功能,在控制台查看输出
5)支持大量的插件

安装

www.sublimetextcn.com

使用

最常用的
1、新建文件-输入"html:xt"后 按"Ctrl+E键"或 “tab键” ,可快速生成xhtml 1.0的模板
2、新建文件-输入"html:5"后 按"Ctrl+E键"或 “tab键” ,可快速生成HTML5的模板
3、新建文件-输入"!"后 按"Ctrl+E键"或 “tab键” ,可快速生成HTML5的模板

Ctrl+Shift+ [ 折叠代码 (在CSS中表示紧凑格式,在html中为折叠代码)
Ctrl+Shift+ ] 折叠代码 (在CSS中表示扩张格式,在html中为恢复折叠代码)
Ctrl+Shift+C CSS属性排序
Ctrl+Alt+N 快速创建文件(填上文件扩展名可生成模板,例如:demo.html)
Ctrl+Alt+K 刪除不必要的空白
Ctrl+Shift+Alt+F 格式化JS代码
Ctrl+Shift+Alt+M 压缩CSS/JS代码(生成结果为:文件名.min.css、文件名.min.js)
F1 Chrome浏览器预览
F2 Firefox浏览器预览
F3 IE浏览器预览
F4 打开调色盘
F11 全屏
F12 默认浏览器预览
按住鼠标滚轮下拉可多行编辑

Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)
Ctrl+G 跳转到相应的行
Ctrl+J 合并行(已选择需要合并的多行时)
Ctrl+L 选择整行(按住-继续选择下行)
Ctrl+M 光标移动至括号内开始或结束的位置
Ctrl+T 词互换
Ctrl+U 软撤销
Ctrl+P 查找当前项目中的文件和快速搜索;输入 @ 查找文件主标题/函数;或者输入 : 跳转到文件某行;
Ctrl+R 快速列出/跳转到某个函数
Ctrl+K Backspace 从光标处删除至行首
Ctrl+K+B 开启/关闭侧边栏
Ctrl+KK 从光标处删除至行尾
Ctrl+K+T 折叠属性
Ctrl+K+U 改为大写
Ctrl+K+L 改为小写
Ctrl+K+0 展开所有
Ctrl+Enter 插入行后(快速换行)
Ctrl+Tab 当前窗口中的标签页切换

Ctrl+Shift+A 选择光标位置父标签对儿
Ctrl+Shift+D 复制光标所在整行,插入在该行之前
ctrl+shift+F 在文件夹内查找,与普通编辑器不同的地方是sublime允许添加多个文件夹进行查找
Ctrl+Shift+K 删除整行
Ctrl+Shift+L 鼠标选中多行(按下快捷键),即可同时编辑这些行
Ctrl+Shift+M 选择括号内的内容(按住-继续选择父括号)
Ctrl+Shift+P 打开命令面板
Ctrl+Shift+/ 注释已选择内容
Ctrl+Shift+↑可以移动此行代码,与上行互换
Ctrl+Shift+↓可以移动此行代码,与下行互换
Ctrl+Shift+[ 折叠代码
Ctrl+Shift+] 展开代码
Ctrl+Shift+Enter 光标前插入行

Ctrl+PageDown 、Ctrl+PageUp 文件按开启的前后顺序切换

Ctrl+Z 撤销
Ctrl+Y 恢复撤销
Ctrl+F2 设置/取消书签
Ctrl+/ 注释整行(如已选择内容,同“Ctrl+Shift+/”效果)
Ctrl+鼠标左键 可以同时选择要编辑的多处文本

Shift+鼠标右键(或使用鼠标中键)可以用鼠标进行竖向多行选择
Shift+F2 上一个书签
Shift+Tab 去除缩进
Alt+Shift+1(非小键盘)窗口分屏,恢复默认1屏
Alt+Shift+2 左右分屏-2列
Alt+Shift+3 左右分屏-3列
Alt+Shift+4 左右分屏-4列
Alt+Shift+5 等分4屏
Alt+Shift+8 垂直分屏-2屏
Alt+Shift+9 垂直分屏-3屏

Ctrl+Shift+分屏序号 将当前焦点页分配到分屏序号页

Alt+. 闭合当前标签
Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑

Tab 缩进 自动完成
F2 下一个书签
F6 检测语法错误
F9 行排序(按a-z)

  • 快捷键

    !+tab键—生成HTML代码
    html:5+tab键----生成HTML代码

    Ctrl+n—新建文件
    Ctrl + shift + p----
    ctrl + ~----控制台

    esc----取消
    ctrl+shift+h-------格式化代码
    ctrl+/------注释单行
    Ctrl+shift+/-----注释多行

插件安装

一:直接安装
将插件安装到packages中。

二:
使用package control组件安装

  • package control

    sublime软件的插件包管理器

    https://packagecontrol.io
    在官网复制安装代码text3
    在软件控制台粘贴运行

    • 安装

      https://packagecontrol.io

      在官网复制安装代码text3
      。。。

      在软件控制台粘贴运行

  • 插件种类

    汉化版插件Chinese、编码插件convertToUTF8、Emmet快速编写HTML和css、IMESupport输入法跟随光标插件、SublimeCodeIntel代码提示插件、SideBarEnhancements侧边栏插件
    sublimeServer插件

  • 删除插件

    remove

Markdown语法

typora

  • 大标题

    #–
    ##—
    ###—

    粗体
    斜体

    代码片段

    ···
    整段代码
    ···

  • 列表

    -代表

  • 图片

    ![图片名称](地址)

  • 表格

    | 张三 | 李四 | 王五 |
    | | | |
    | 1 2 3 | | |

XMind: ZEN - Trial Version

本文地址:https://blog.csdn.net/yk_ddm/article/details/109260004

相关标签: PHP