结合小编之前在面试php时候总结的一些经验,罗列初级或者中级php需要掌握的知识点,
时间戳的处理,数组的处理,数据库的sql函数掌握情况,js常见的一些json,ajax等应用程度,还包含前端html常见问题。
感觉就是现在说的全栈工程师了,你需要掌握php mysql javascript html和一些常用的tp框架thinkphp,yii,ci等等js框架 vue,还有运维等方面数据注入,网站被黑,更有网络seo排名等知识点。
下面说说面试官经常问到的一些话题
A1.表单提交中的Get和Post的异同点
应用实例<form action="#" method="post?get" name="myform" id="myform">
Q1:
1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。 (可以直接修改url上面的值)
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5. get安全性非常低,post安全性较高。
A2.HTML的base标签是干什么用的
应该案例:
<base target="_blank">这句,那么所有的超链接就无须单独设置。
Q2:
base必须写在head 中, base 标签为页面上的所有链接规定默认地址或默认目标
A3.写一个email的正则表达式
Q3:正则表达式应用也是很广的,在会员注册的时候验证手机号是否是11位,格式是否正确,邮箱啊,昵称等等,邮箱验证也分php验证和javsacript验证 可以双重验证
我们可以封装一个函数
function verifyEmail($str){
// $pattern = '/^\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}$/';
//@前面的字符可以是英文字母和._- ,._-不能放在开头和结尾,且不能连续出现
$pattern = '/^[a-z0-9]+([._-][a-z0-9]+)*@([0-9a-z]+\.[a-z]{2,14}(\.[a-z]{2})?)$/i';
if(preg_match($pattern,$str)){
return true;
}else{
return false;
}
}
$str = 'freemuban@tom.com';
//测试验证邮箱函数的功能
if(verifyEmail($str)){
echo '电子邮箱格式合法';
}else{
echo '电子邮箱格式不合法';
}
具体正则表达式的规则可以看http://freemuban.com/php/h360.html
我们在看看javascript验证邮箱
<input type="text" value="" id="mail"/>
<input type="button" value="test" id="checkout" onclick="isValidMail(sText)" />
<script type="text/javascript">
var sText = document.getElementById('mail').value;
document.getElementById('mail').onblur = function sValue(){
sText = this.value;
}
function isValidMail(sText) {
var reMail = /^(?:[a-zA-Z0-9]+[_\-\+\.]?)*[a-zA-Z0-9]+@(?:([a-zA-Z0-9]+[_\-]?)*[a-zA-Z0-9]+\.)+([a-zA-Z]{2,})+$/;
alert(reMail.test(sText))
}
A4:数组['a', 'b', 'c'] 转换成字符串 'abc'
Q:这个就考到数据转换,字符串转数组,数组转字符串,需要用到implode函数和join含税
$arr1= implode('',['a', 'b', 'c']);
$arr2= join(['a', 'b', 'c'],'');
print_r($arr2);
A5:获取字符串'aAbBdddaxcv'中A首次出现的位置
Q:这个就是掌握字符串处理,首次出现的位置,字符串反转,字符串转大写,字符串转小写等等字符串的处理,详情可以本站搜索字符串处理http://freemuban.com/php/h942.html
echo strpos($str,"A");