“PHP学习网” 公众号会天天分享一些面试题,正在找工做的小伙伴们能够来看看哦。
封装 继承 多态
封装:对象之外的部分不能随意存取对象内部数据
继承:经过子类继承父类进行功能扩展
多态:对具备继承关系的不一样类对象,能够对相同名称的成员函数调用,产生不一样的反应效果php
//第1种方法mysql
substr(strrchr($file, '.'), 1);
//第2种方法
substr($file, strrpos($file, '.')+1);面试
//第3种方法
end(explode('.', $file));redis
//第4种方法
$info = pathinfo($file);
echo $info['extension'];sql
//第5种方法
pathinfo($file, PATHINFO_EXTENSION);编程
<? $count=5; function get_count(){ static $count=0; return ++$count; } echo $count; echo $count++; echo $count; echo get_count(); echo get_count(); ?> 输出为:5 5 6 1 2
function myfunc($argument){ echo $argunment + 10; } $variable = 10; echo “myfunc($variable)=”.myfunc($variable);
先调用函数输出,后输出字符串
输出为: 20myfunc(10)=数组
'/[0-9a-zA-Z_]+@[0-9a-zA-Z_]\.com|\.net|\.cn/ism'
1.过滤用户输入的值 好比从post和get传参得来的值
例:$_POST[‘user’];不过滤,会形成一连串的麻烦安全
2.禁用register_globals 若是不由止,就没法肯定该变量是不是预约义全局变量里的值函数
例:regiseter_globals=on $var 会代替掉 $_POST['var']
3.防止sql注入
使用 mysql_real_escape_string() 做为用户输入的包装器,就能够避免用户输入中的任何恶意 SQL 注入post
例: $sql = "select count(*) as ctr from users where username='".mysql_real_ _string($username)."' and password='". mysql_real_escape_string($pw)."' limit 1";
使用explain查看sql语句 最主要的查看type和Extra的值
这题和击鼓传花同样,能够用队列的思路实现
//注释不要抄,帮助理解 function king($m ,$n) { //构造数组 for($i=1 ;$i<$m+1 ;$i++){ $arr[] = $i ; } $i = 0 ; //设置数组指针 while(count($arr)>1) { //遍历数组,判断当前猴子是否为出局序号,若是是则出局,不然放到数组最后 if(($i+1)%$n ==0) { unset($arr[$i]) ; } else { array_push($arr ,$arr[$i]) ; //本轮非出局猴子放数组尾部 unset($arr[$i]) ; //删除 } $i++ ; } return $arr ; } var_dump(king(6,4));
或者
public static function play($first,$m,$k) { //先要找到是后一个节点 $tail=$first; while ($tail->next!=$first) $tail=$tail->next; //从第几我的开始数就要将这我的设为头节点,也要找到它的后一个结点,做做辅助结点。 for($i=0;$i<$k-1;$i++) { $first=$first->next; $tail=$tail->next; } while($tail!=$first) { //找到要移出的结点。 for($j=0;$j<$m-1;$j++) { $first=$first->next; $tail=$tail->next; } //删除节点 echo '小孩'.$first->no.'被移除'.'<br>'; $first=$first->next; $tail->next=$first; } echo '大王是:'.$first->no; } }
先带羊 后带白菜 再带狼
a饼 b饼 烤 半分钟 把b拿掉 换上c饼 a饼反面 烤 半分钟 再把a饼拿掉 换上b饼反面 c饼反面 烤半分钟
5天 第五天白天爬出井口
最后各位能够扫下方二维码关注我公众号,目前我正在更新基础面试题,以后会更新中高级、redis、liunx面试题