php公司面试反问,php面试坑集锦
有個(gè)小伙伴去面試php,然后發(fā)了兩個(gè)面試題給我!結(jié)果我全做錯(cuò)了!汗!趕緊記下來(lái)!下次要是有坑還繼續(xù)放在這里!給自己一個(gè)提醒,如果有可能,也給大家一個(gè)提醒!基礎(chǔ)很重要啊!
下面是第一道題目:
$count = 12;
$limit = 15;
function get_count(){
static $count = 0;
return $count++;
}
function get_limit($num){
return $num++;
}
if($count = 5 || $limit = 7){
$count++;
$limit = get_limit($limit)+get_count();
}
++$count;
echo get_count().'=='.$count."**".$limit;
本道題目考察的知識(shí)點(diǎn):
static變量和普通變量的區(qū)別
運(yùn)算符優(yōu)先級(jí)
優(yōu)先級(jí) 可以先看一下官方的手冊(cè):php優(yōu)先級(jí)
++i 與i++的區(qū)別
這個(gè)是比較基礎(chǔ)的東西 相信大家應(yīng)該都知道!下面的這篇博文講的比較詳細(xì)!
i++與i++的區(qū)別和效率
下面我們直接分步分析這道題目吧:
$count = 12;
$limit = 15;
function get_count(){
static $count = 0;//靜態(tài)變量,內(nèi)存中只會(huì)有一個(gè)$count,而且只能被初始化一次,所以在本函數(shù)中$count初始值為0;
return $count++;
}
echo $count ;// 12 這是因?yàn)樽兞孔饔糜虻膯?wèn)題
function get_limit($num){
return $num++;
}
var_dump(($count=5));//int(5)
if($count = 5 || $limit = 7){//|| 一側(cè)為真即為真 后面的就不執(zhí)行了 所以$limit = 7這個(gè)賦值沒(méi)運(yùn)行!
echo $count;
$count++;
echo $count;//1 不知道為啥是1..我也很疑惑,哪位大神幫我解答一下。。。
$limit = get_limit($limit)+get_count();
// 15 + 0 之所以是0 和15 是上面的第三個(gè)知識(shí)點(diǎn)可以看一下!
}
++$count;
echo get_count().'=='.$count."**".$limit;
//題外話(huà):我發(fā)現(xiàn)get_count()每調(diào)用一次 $count才會(huì)變!所以也只有這個(gè)函數(shù)才會(huì)影響這個(gè)變量的值!
答案:
1==1**15
第二道題:
$arr = [0=>1,'aa'=>2,3,4];
foreach($arr as $k => $v){
print($k=='aa'?5:$v);
}
本道題目考察的知識(shí)點(diǎn):
字符串比較的時(shí)候,如果用==比較的時(shí)候 會(huì)有坑!這其實(shí)是隱式轉(zhuǎn)換的問(wèn)題,整型和字符串型比較的時(shí)候會(huì)將字符串隱式轉(zhuǎn)化字符串!我們可以直接來(lái)看一下下面的代碼執(zhí)行結(jié)果
var_dump(0=='aa');//bool(true)
var_dump(0==='aa');//bool(false)
var_dump(strcmp(0,'aa'));//bool(false)
var_dump(0=='aa1');//bool(true)
var_dump(0=='1aa');//bool(false)
答案:
5534
更新于2017-11-28
感謝@黃海林的指點(diǎn)!關(guān)于下面這段代碼的疑惑已經(jīng)很明白了!這里特別做一次更新!
if($count = 5 || $limit = 7){
$count++;
$limit = get_limit($limit)+get_count();
}
$count的類(lèi)型確實(shí)是bool(true),詳情可以看3樓的詳細(xì)分解!
寫(xiě)在最后的話(huà)
如果小伙伴有新的坑的話(huà)在評(píng)論中回復(fù)我!或者對(duì)我的理解有異議也可以直接回復(fù)我!謝謝!
總結(jié)
以上是生活随笔為你收集整理的php公司面试反问,php面试坑集锦的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: docker fdfs修改storage
- 下一篇: ubuntu 20.04 快速开启TCP