php多态
发表于|更新于|php
通过接口
A有B和C两个实现,但是起实现方法是不同的,这就是PHP多态
文章作者: developer
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Dev!
相关推荐
2019-08-30
php SplQueue php标准库 队列 和数组 性能差异
数组模拟队列12345678910111213141516171819$t1 = microtime(true);$arrq = array();for ($i = 0; $i < 100000; $i++) { $data = "hello $i\n"; array_push($arrq, $data); if ($i % 100 == 99 and count($arrq) > 100) { $popN = rand(10, 99); for ($j = 0; $j < $popN; $j++) { array_shift($arrq); } }}$popN = count($arrq);for ($j = 0; $j < $popN; $j++) { array_shift($arrq);}$t2 = microtime(true);echo ($t2 -...
2019-09-06
PHP 数组 内部指针 操作函数 current end prev reset next
12345current() # 返回数组中的当前单元end() # 将数组的内部指针指向最后一个单元prev() # 将数组的内部指针倒回一位reset() # 将数组的内部指针指向第一个单元next() # 将数组中的内部指针向前移动一位 这些函数都会改变当前数组内部指针所指向的元素 注意unset一个元素的时候,内部指针会自动指向下一个有效元素如果在最后一个元素时,使用unset,会导致后面没有有效元素所以调用key会出现null,需要手动reset到数组头部
2017-08-29
PHP date 常用格式化日期 带不带0
12345// 带前导0echo date('Y-m-d H:i:s);// 不带0echo date('Y-n-j G:i:s');
2019-04-30
php yield Generator 处理大数组
https://www.jianshu.com/p/86fefb0aacd9http://www.laruence.com/2015/05/28/3038.html yield让出,返回的意思,返回一个生成器对象,可以被遍历,每次他都返回yield右侧的值并中断在那里如果你调用生成器的current()方法,将获取到当前值,如果调用send()方法,将改变当前值,并执行到下一个yield后停下来,如果yeild在等号右侧,send()会先改变当前值,然后赋值,如下所示 也就是说,yield的current send方法获取到的总是当前的值,而yield左侧的值如果有send就是是send过去的 12345678910111213141516171819202122function gen(){ $ret = (yield 'yield1'); var_dump($ret); // 2.ret1 $ret = (yield 'yield2'); var_dump($ret); // 4.ret2}$...
2018-07-01
php array_walk array_map
效率对比可以选用array_walk array_map foreach for 产生数组12$max = 100000;$arr = range(0, $max); for0.0202569961547850.0197999477386470.020244121551514[ 12345678// for$temp = 0;$t1 = microtime(true);for ($i = 0; $i < $max; $i++){ callback($arr[$i]);}$t2 = microtime(true); foreach0.0171449184417720.0175659656524660.02012300491333 1234567$temp=0;$t1 = microtime(true);foreach ($arr as $value) { callback($value);}$t2 = microtime(true);echo $t2 - $t1; array_walk0.02513313293457...
2018-01-17
php 小数点 错误 浮点型相乘错误
参考文献http://php.net/manual/zh/language.types.float.phphttp://php.net/manual/zh/book.bc.php 浮点计算精度有限有小数点时不能直接比较大小相乘也要小心 应该使用专业的函数bccomp比较大小 实例 123456var_export(100*'1.1');// 110.00000000000001var_export(100*'1.1' == 110);// falsevar_export(bccomp(100*'1.1' , 110 ));// 0 小数计算非常小心 1100*'1.1' 比较大小时 他是按一堆0的var_export也是一堆0var_dump 确实没有一堆0 有小数的计算要用bc系列计算函数实例 1234// 设置默认精度2位小数bcscale(2);// 相乘var_export(bcmul(0.1,9));
公告
This is my Blog