正则表达式
是一种文本模式,包括普通字符和特殊字符
一种规则 字符串规则
转义字符:
开始的位置:^
结束的位置:$
量词
*[0-9] 0 次或多次
‘+’ 一次或多次
?0次或一次
{n}刚好n次
{n,m}不小于n次且不大于m 次
{n,}不小于n次的任意次
优先级
( ),[ ]
{ }
其他字符
常用的一些正则表达式
数字类
数字:^ [0-9]*$
n位的数字:^ \d{n}$
至少n位的数字:^ \d{n,}$
0和非0 开头的数字:^ (0| [1-9] [0-9] *)$
字符串类
汉字:^ [\u4e00-\u9fa5]{0,}$
英文和数字:^ [A-Za-z0-9]+$
中英文、数字、下划线:^ [\u4e00-\u9fa5A-Za-z0-9_ ]+$
中英文、数字、无下划线:^ [\u4e00-\u9fa5A-Za-z0-9]+$
特殊需求类
正则表达式匹配
<?php
$str = "/^(1[3|4|5|7|8|9])[0-9]{9}$/";
if(preg_match($str,"13333333333")){
echo "这是一个手机号";
}else{
echo "手机号不合规";
}
?>
PHP 的cookie和session
什么是Cookie?
Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端会把Cookie保存起来。
当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。
信息保存的时间可以根据需要设置.
如果没有设置Cookie失效日期,它们仅保存到关闭浏览器程序为止.
如果将Cookie对象的Expires属性设置为Minvalue,则表示Cookie永远不会过期.
Cookie存储的数据量很受限制,大多数浏览器支持最大容量为4K,因此不要用来保存数据集及其他大量数据.
由于并非所有的浏览器都支持Cookie,并且数据信息是以明文文本的形式保存在客户端的计算机中,
因此最好不要保存敏感的,未加密的数据,否则会影响网站的安全性
输出cookie信息
<?php
$value = 'try to remember';
setcookie("TestCookie",$value);
echo "<br/>";
setcookie("TestCookie",$value,time()+3600,"/","woniuxy.com",1);
echo $_COOKIE["TestCookie"];
echo "<br/>";
print_r($_COOKIE);
?>
页面跳转
页面1
<?php
session_start();
echo 'welcome to here';
$_SESSION['favcolor'] = 'green';
$_SESSION['animal'] = 'pig';
$_SESSION['time'] = time();
echo '<br /><a href="sess2.php">sess 2<a/>';
?>
页面2
<?php
session_start();
echo 'we to h #2<br />';
echo $_SESSION['favcolor'];
echo $_SESSION['animal'];
echo "<br/>";
echo date('Y m d H:i:s',$_SESSION['time']);
?>
什么是Session?
Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。
每个用户访问服务器都会建立一个session,那服务器是怎么标识用户的唯一身份呢?事实上,用户与服务器建立连接的同时,服务器会自动为其分配一个SessionId。
Session和Cookie的区别?
1、数据存储位置:cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、安全性:cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。
3、服务器性能:session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4、数据大小:单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、信息重要程度:可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。
PHP 连接数据库
mysqli 是mysql的增强扩展板,在PHP中,mysqli自身就是一个类。因此他可以用两种方式对数据库进行操作,一种是以类面向对象的风格,一种是当成一般函数面向过程的风格。
数据库连接
<?php
$url = 'localhost';
$user = 'root';
$pass = 'root';
$con = mysqli_connect($url,$user,$pass);
if(!$con){
echo "db connect failed";
}else{
echo "db connect success";
}
?>
创建表,输入字段
单条查询
多条查询