-
+ 贪婪模式,尽可能多的匹配; ? 懒惰模式,可匹配与不可匹配,优先不匹配。查看全部
-
$matches结果排序为$matches[0]保存完整模式的所有匹配, $matches[1] 保存第一个子组的所有匹配,以此类推。查看全部
-
注意:后面的第8、9、10、11章单做课程了,大家请去课程列表里查找,标题为“PHP进阶篇-***”。 PHP进阶篇-函数 :http://www.imooc.com/learn/737 PHP进阶篇-日期时间函数:http://www.imooc.com/learn/698 PHP进阶篇-GD库图像处理:http://www.imooc.com/learn/701 PHP进阶篇-字符串操作:http://www.imooc.com/learn/726查看全部
-
对于删除与更新操作,可以通过mysql_affected_rows函数来获取更新过的数据行数,如果数据没有变化,则结果为0。 $sql = "update user set name = '曹操' where id=2 limit 1"; if (mysql_query($sql)) { echo mysql_affected_rows(); }查看全部
-
如果要获取数据集中的所有数据,我们通过循环来遍历整个结果集。 $data = array(); while ($row = mysql_fetch_array($result)) { $data[] = $row; }查看全部
-
对象复制有问题,var_dump运用不熟练查看全部
-
发生异常之后代码继续进行 异常抛出被用于在遇到未知错误,或者不符合预先设定的条件时,通知客户程序,以便进行其他相关处理,不至于使程序直接报错中断。查看全部
-
自定义一个异常处理类: class MyException extends Exception { function getInfo() { return '自定义错误信息'; } }查看全部
-
典型的try-catch try{ checkNum(2); //如果异常被抛出,那么下面一行代码将不会被输出 echo '如果能看到这个提示,说明你的数字小于等于1'; }catch(Exception $e){ //捕获异常 echo '捕获异常: ' .$e->getMessage(); } 自己创建一个异常throw new exception("异常提示信息"); //创建可抛出一个异常的函数 function checkNum($number){ if($number>1){ throw new Exception("异常提示-数字必须小于等于1"); } return true; }查看全部
-
1、$0表示所有匹配,$1表示第一个匹配查看全部
-
正则表达式的搜索和替换 1、正则表达式的搜索与替换在某些方面具有重要用途,比如调整目标字符串的格式,改变目标字符串中匹配字符串的顺序等。 例如我们可以简单的调整字符串的日期格式: $string = 'April 15, 2017'; $pattern = '/(\w+) (\d+), (\d+)/i'; $replacement = '$3, ${1} $2'; echo preg_replace($pattern,$replacement,$string);//结果为:2014,April 15 其中${1}与$1的写法是等效的,表示第一个匹配的字符串,$2代表第二个匹配的。 2、通过复杂的模式,我们可以更加精确的替换目标字符串的内容。 $patterns = array('/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/','/^\s*{(\w+)}\s*=/'); $replace = array('\3/\4/\1\2');//\3等效于$3,\4等效于$4,以此类推 echo preg_replace($patterns,$replace,'{startDate} = 1999-5-27');//结果为:$startDate = 5/27/1999 //详细解释下结果:(19|20)表示取19或者20中任意一个数字,(\d{2})表示两个数字,(\d{1,2})表示1个或2个数字,(\d{1,2})表示1个或2个数字。^\s*{(\w+)\s*=}表示以任意空格开头的,并且包含在{}中的字符,并且以任意空格结尾的,最后有个=号的。 3、用正则替换来去掉多余的空格与字符 $str = 'one two'; $str = preg_replace('/\s+/',' ',$str); echo $str;//结果改变为 'one two';查看全部
-
php array查看全部
-
正则表达式之查找所有匹配结果 1、preg_match只能匹配一次结果,但很多时候我们需要匹配所有的结果,preg_match_all可以循环获取一个列表的匹配结果数组。 例: $p = "|<[^>]+>(.*?)</[^>]+>|i"; $str = "<b>example:</b><div align=left>this is a test</div>"; preg_match_all($p,$str,$matches); print_r($matches); 2、可以使用preg_match_all匹配一个表格中的数据: 例: $p = "/<tr><td>(.*?)<\/td>\s*<td>(.*?)<\/td>\s*<\/tr>/i"; $str = "<table> <tr><td>Eric</td><td>25</td></tr> <tr><td>John</td><td>26</td></tr> </table>"; preg_match_all($p,$str,$matches); print_r($matches); 3、$matches结果排序为$matches[0]保存完整模式的所有匹配,$matches[1]保存第一个子组的所有匹配,以此类推。查看全部
-
PHP类和对象之对象继承 <?php class Car { public $speed = 0; //汽车的起始速度是0 public function speedUp() { $this->speed += 10; return $this->speed; } } //定义继承于Car的Truck类 class Truck extends Car { public function speedUp () { $this->speed = parent::speedUp() + 50; } } $car = new Truck(); $car->speedUp(); echo $car->speed;查看全部
-
$car = new Car(); Car::speedUp(); //调用静态方法加速 echo $car->getSpeed(); //调用共有方法输出当前的速度值 这两个方法的效果不一样:一个是不需要实例化,直接调用类的静态方法,进行速度加10; 另一个是通过实例化Car类,然后调用该类的共有方法getSpeed()获得当前的速度; 1、Car::speedUp()是调用Car类中speedup静态方法,通过该方法使得speed加上10; 注意:类的静态方法是不允许进行实例化的,若要调用类的静态方法或者是属性可通过类名::方法名的形式进行调用,例如Car::speedUp(); 2、$car->getSpeed()是调用Car类中的共有方法getSpeed();通过该方法获得当前的速度,然后进行输出,此时的速度为20;查看全部
举报
0/150
提交
取消