今天内容
1.正则表达式
2.数学函数
3.日期函数
4.错误处理
正则表达式:
1.模式修正符
2.五个常用函数
另外一个正则表达式的网站:http://www.jb51.net/tools/zhengze.html
正则表达式
1.原子
2.元子符
3.模式修正符
正则表达式函数
1.preg_match();
2.preg_match_all();
3.preg_grep();
4.preg_replace();
5.preg_split();
原子:
.:代表任意一个字符
\w: 字母 数字 下划线
元子符:
*:修饰前面的,0,1,多个.代表任意多个字符,直到结束
+:一个.多个
?:0个一个前面的原子
|:代表或
^:一开什么开头
$:以什么结尾
\b:词边缘
\B:非词边缘
单个字母 数字
a-z A-Z 0-9 代表任意一个字符
[]代表里面的任意一个字符
[^abc]他里面除了abc的任意一个字符
()代表一个单元
\d 任意一个数字
\D 任意一个非数字
\w:代表任意一个字母数字下划线
\W:出了字母.数字.下划线意外任意一个字符
\s:空白字符
\S:除了空白字符以外的任意一个字符
{2}:2个原子
{2,}:2个以上的原子
{2,5}: 2-5个前面的原子
模式修正符:
/正则表达式/U
匹配与以上特殊字符同名的普通字符,需要在前面加入/
<?php $sub = "www.baidu.com"; $ptn = '/\w*\.\w*\.\w*/'; // 正则表达式,元数据,返回的数据 preg_match($ptn, $sub,$mats); echo "<pre class="brush:php;toolbar:false">"; print_r($mats); echo "
<?php $str = "my ip is 192.168.10.1sdjlfajdf192.178.39.4la"; $ptn = '/\d+\.\d+\.\d+\.\d+/'; preg_match_all($ptn, $str,$mats); echo "<pre class="brush:php;toolbar:false">"; print_r($mats); echo "
<?php $str = "Linux and php are lamp or linux is very much"; $ptn = '/linux/i'; preg_match_all($ptn, $str,$mats); echo "<pre class="brush:php;toolbar:false">"; print_r($mats); echo "
<?php $str = "Linux and php are lamp or \nlinux is very much"; $ptn = '/^linux/im'; preg_match_all($ptn, $str,$mats); echo "<pre class="brush:php;toolbar:false">"; print_r($mats); echo "
<?php $str = "Linux and php are lamp or \nlinux is very much"; $ptn = '/.*/s'; preg_match_all($ptn, $str,$mats); echo "<pre class="brush:php;toolbar:false">"; print_r($mats); echo "
<?php $str = "123 php"; $ptn = '/\d+\s(\w+)/e'; $rep = 'strtoupper($1)'; // preg_match_all($ptn, $str,$mats); $str2 = preg_replace($ptn, $rep, $str); echo "<pre class="brush:php;toolbar:false">"; print_r($str2); echo "
<?php $str = "123 php"; $ptn = '/(\d+)(\s)(\w+)/'; $rep = '$3$2$1'; // preg_match_all($ptn, $str,$mats); $str2 = preg_replace($ptn, $rep, $str); echo "<pre class="brush:php;toolbar:false">"; print_r($str2); echo "
<?php //比如代表文章 $arr = array( "php html", " linux redhat rhce", "junzaivip test php", ); //需要搜索的内容 $ptn = '/junzaivip/'; //返回搜索到的内容 $arr2 = preg_grep($ptn, $arr); echo "<pre class="brush:php;toolbar:false">"; print_r($arr2); echo "
<?php echo max(3,45,6,7); echo "<br>"; echo max(array(4,6,8,9)); ?>
<?php echo time(); echo "<hr>"; echo date("Y-m-d H:i-s w t",0); ?>
<?php echo strtotime("2014-12-12"); ?>
<?php echo date("Y-m-d H:i:s",time()+8*3600); ?>
<?php //设置中国的时区为默认时区 date_default_timezone_set("PRC"); echo date("Y-m-d H:i:s",time()); ?>
<?php //设置中国的时区为默认时区 date_default_timezone_set("PRC"); $y = "1900/1/1"; $time = strtotime($y); echo date("L",$time); ?>
<?php $stime = microtime(1);//注意这个位置必须用true,否者无法参与计算 sleep(1); $etime = microtime(1); echo $etime - $stime; ?>
<?php //修改字符编码 //header("content-type:text/html;charset=utf-8"); date_default_timezone_set("PRC"); //获取当前年 $year = $_GET['y']?$_GET['y']:date('Y'); //获取当前月 $month = $_GET['m']?$_GET['m']:date('m'); //获取获取当前月有多少天 $days = date('t',strtotime("{$year}-{$month}-1"));//里面必须用双引号 //当前一号是周几 $weeks = date('w',strtotime("{$year}-{$month}-1")); //所有有内容居中 echo "<center>"; //输出表头 echo "<h2>{$year}年{$month}月</h2>"; //输出日期表格 echo "
日 | "; echo "一 | "; echo "二 | "; echo "三 | "; echo "四 | "; echo "五 | "; echo "六 | "; echo "{$i} | "; } $i++; } echo ""; } echo "
---|