从8月15号来到北京一直到今天,一月有余。来的这段时间一直准备笔试面试,大大小小的公司,乱七八糟面了10多家,近期才安顿下来。面试的这段时间感觉自己成长了不少。初来到这个陌生的城市一脸茫然,不会乘地铁、不会有挤公交、不会恰如其分的生活。。。
面试是进入职场的第一道坎,因为我本身学校太一般的问题在面试中遇到了各种不爽,和那些高学历的相比自己真是信心大跌。我面试的方向是php开发工程师,主要做网站后台、APP接口等。我所面试的公司、试题、心得都在我的个人网站上,感兴趣的可以看看:http://dwz.cn/1KMpea。下面是我这段时间总结的面试方面的常考常问的知识点,希望对大家有所帮助,不对之处欢迎指出。
总结:
php部分我是按照面试常问的问题总结的,下面的问题在面试中出场率很高。问题比较基础
--------------------PHP部分---------------------
PHP中几个输出函数echo,print(),print_r(),sprintf(),var_dump()的区别1:echo:是语句不是函数,没有返回值,可输出多个变量值,不需要圆括号。不能输出数组和对象,只能打印简单类型(如int,string)。
2:print:是语句不是函数,有返回值 1 ,只能输出一个变量,不需要圆括号。不能输出数组和对象,只能打印简单类型(如int,string)。
3:print_r:是函数,可以打印复合类型,例如:stirng、int、float、array、object等,
输出array时会用结构表示,而且可以通过print_r($str,true)来使print_r不输出而返回print_r处理后的值
4:printf:是函数,把文字格式化以后输出(参看C语言)
5:sprintf:是函数,跟printf相似,但不打印,而是返回格式化后的文字(该函数把格式化的字符串写写入一个变量中,而不是输出来),其 他的与printf一样。
例如: $str = 'Hello'; $number = 123;
$txt = sprintf('%s world. Day number %u',$str,$number); //输出:Hello world. Day number 123
6:var_dump():函数,输出变量的内容、类型或字符串的内容、类型、长度。常用来调试。
写个函数来解决多线程同时读写一个文件的问题。1 <?php 2 $fp = fopen('/tmp/lock.txt','w+'); 3 if(flock($fp, LOCK_EX)){// 进行排它型锁定 4 fwrite($fp,'Write something here'); 5 flock($fp, LOCK_UN);// 释放锁定 6 }else{ 7 echo 'Couldn't lock the file !'; 8 } 9 fclose($fp);10 ?>
禁掉cookie的session使用方案,设置session过期的方法,对应函数:
通过 url 传值,把session id附加到url上(缺点:整个站点中不能有纯静态页面,因为纯静态页面session id 将无法继续传到下一页面) 通过隐藏表单,把session id 放到表单的隐藏文本框中同表单一块提交过去(缺点:不适用<a>标签这种直接跳转的非表单的情况) 直接配置php.ini文件,将php.ini文件里的session.use_trans_sid= 0设为1,(好像在win上不支持) 用文件、数据库等形式保存Session ID,在跨页过程中手动调用1 第一种 setcookie() 直接用setcookie设置session id的生命周期。 2 3 $lifetime=60; //保存1分钟 4 session_start(); 5 setcookie(session_name(), session_id(), time()+$lifetime, '/'); 6 第二种 session_set_cookie_params() 7 $lifetime=60;//保存1分钟 8 session_set_cookie_params($lifetime); 9 session_start();10 session_regenerate_id(true);11 其中session_regenerate_id();方法用于改变当前session_id的值,并保留session中数组的值。参数默认为 false,如果设置为true则改变session_id的值,并清空当前session数组。
json格式数据有哪些特点
JSON 一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、 Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(网络传输速率)。
JSON的结构基于下面两点
1. '名称/值'对的集合不同语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),键列表(keyed list)等郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答