表单提交
- phpinfo()
<?php phpinfo();?> # 打印出PHP的版本
- var_dump() # 打印出字符串的类型长度以及字符串
<?php
var_dump('abc123');
?>
- 标单提交
action表示表单提交的地址,method是提交的方法(一般为GET/POST/REQUEST),name表示传递的参数,百度搜索的参数默认为wd
<form action="https://www.baidu.com/s" method="GET">
<input type='text' name='wd'/>
<input type='submit'/>
</form>
输入任意内容,发现跳转到百度搜索界面,搜索内容即为我们输入的内容。
PHP和数据库交互
- 基本函数
mysqli_connect(地址,账号,密码,数据库名) # 用于数据库连接
mysqli_query(连接语句,执行语句) # 执行数据库语句
mysqli_fetch_array() # 将数据转换成数组形式
登陆界面
<form action="login.php" method="REQUEST">
<input type='text' name="username"/>
<input type='password' name="password"/>
<input type='submit'/>
</form>
<?php
$username=$_REQUEST['username'];
$pass=$_REQUEST['password'];
$con=mysqli_connect('127.0.0.1','root','root','abc');
$sql="select * from admin_tb where username='$username' and password='$pass'";
$query=mysqli_query($con,$sql);
if(mysqli_fetch_array($query)){echo "登陆成功!欢迎您!";}
else{echo "帐户名或密码错误,登陆失败!";}
?>
注册界面
<form action='register.php' method='REQUEST'>
<input type="text" name="username">
<input type="password" name="password">
<input type="submit">
</form>
<?php
$user=$_REQUEST['username'];
$pass=$_REQUEST['password'];
$conn=mysqli_connect('127.0.0.1','root','root','abc');
$sql="insert into admin_tb (username,password) values('$user','$pass')";
if(mysqli_query($conn,$sql)) echo "注册成功!";
else echo "注册失败!";
?>
PHP正则表达式
常用函数
preg_match_all(/要搜索的字符串/,输入字符串,匹配后输出的字符串存入数组)
<?php
echo preg_match_all('/1/','123321',$c); # 输出'123321'字符串中匹配到1的次数
print_r($c);
?>
preg_replace(/要搜索的字符串/,要替换成什么字符串,需要替换的字符串)
<?php
echo preg_replace('/1/','a','123123');
?>
常用转义字符
数字:\d
非数字:\D
空白字符:\s
非空白字符:\S
单词字符(英文字符+数字+下划线):\w
非单词:\W
e.g将所有非单词字符替换为1
<?php
echo preg_replace('/\W/','1','ah!@$#%ahs');
?>
e.g 判断非法字符输入
<?php
if(preg_match_all('/\W/',$_GET['id'])) die('非法输入');
?>
自定义字符
[a-z] 表示a-z这26个字母
[0-9a-z] 表示0-9这10个数字a-z这26个字母
[1357a-c] 表示1357这4个数字和a-c这3个字母
[^0-9a-z] 表示所有非0-9和a-z的字符
<?php
if(preg_match_all('/[^0-9a-zA-Z]/',$_GET['id'])) die('非法输入');
?>
关键词
() 表示一个整体
^ 匹配字符串开始的位置
$ 匹配字符串结尾的位置($放在需要匹配的字符串后,e.g /123$/)
. 匹配任意字符
* 匹配0次或多次(*放在需匹配的字符串后)
+ 匹配1次或多次(+放在需匹配的字符串后)
\ 转义字符
| 二选一
限定符+修饰符
限定符:
{n} e.g 1{3} 要3个1才会被匹配
{n,} e.g 1{3,} 3个1及以上会被匹配
{n,m} e.g 1{1,3} 最少匹配1个1,最多匹配3个1(默认匹配最多次数)
修饰符:
/i 不区分大小写
/A 匹配规则必须从头开始匹配
/s .将匹配一切字符
/x 挣扎表达式中的空白符将会被忽略
<?php
echo preg_match_all('/a/i','aAbbsd');
?>