国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

php面試題 匯集1

taowen / 1297人閱讀

摘要:刪除數(shù)組的最后一個(gè)元素輸出刪除的最后一個(gè)元素輸出擴(kuò)展名切割字符串函數(shù)查找字符串在另一字符串中最后一次出現(xiàn)的位置。

一. 寫出如下程序的輸出結(jié)果

參考試題出處
1.基礎(chǔ)



正確答案:相等 相等 不相等
注:== 表示值相等  ===表示值與類型都必須一樣

原因是在PHP中變量是以C語(yǔ)言的結(jié)構(gòu)體來(lái)存儲(chǔ)的,空字符串和NULL,false都是以值為0存儲(chǔ)的,其中這個(gè)結(jié)構(gòu)體有個(gè)zend_uchartype;這樣的成員變量,他是用來(lái)保存變量的類型的,而空字符串的類型是string,NULL的類型是NULL,false是boolean。

所以空字符串(""),false,NULL和0是值相等而類型不一樣!

2.輸出值

$a1 = null;
$a2 = false;
$a3 = 0;
$a4 = "";
$a5 = "0";
$a6 = "null";
$a7 = array();
$a8 = array(array());
echo "
"; echo empty($a1) ? "true" : "false"; echo "
"; echo empty($a2) ? "true" : "false"; echo "
"; echo empty($a3) ? "true" : "false"; echo "
"; echo empty($a4) ? "true" : "false"; echo "
"; echo empty($a5) ? "true" : "false"; echo "
"; echo empty($a6) ? "true" : "false"; echo "
"; echo empty($a7) ? "true" : "false"; echo "
"; echo empty($a8) ? "true" : "false"; 正確答案:true true true true true false true false 解釋:$a1--$a5都是0 $a7是空數(shù)組

3.輸出值

    $test = "aaaaaa";
    $abc = & $test;
    unset($test);
    echo $abc;
    
    正確答案:aaaaaa
    解釋:& $test; 只是建立了一個(gè)通道指向值存儲(chǔ)的地方  unset只能撤銷$test的通道,但是
    對(duì)$abc沒(méi)影響

4.輸出值

$count = 5;
function get_count(){
    static $count = 0;
    return $count++;
}
echo $count;
++$count;
echo get_count();
echo get_count();

正確答案:501
解釋:不用解釋,局部變量,靜態(tài)變量 后加

5.輸出值

 $GLOBALS["var1"] = 5;
    $var2 = 1;
    function get_value(){
        global $var2;
        $var1 = 0;
        return $var2++;
    }
    get_value();//這里沒(méi)有輸出值 但是var2卻在這里加了值
    echo $var1;
    echo $var2;
    
    正確答案:52
    解釋:如上
    

6.使用五種以上方式獲取一個(gè)文件的擴(kuò)展名

1.substr   strrchr
$filename = "phpddt.jpg";
echo substr(strrchr($filename,"."),1);
//strrchr() 函數(shù)(在php中)查找字符在指定字符串中從左面開(kāi)始的最后一次出現(xiàn)的位置,如果成功,返回該字符以及其后面的字符,如果失敗,則返回 NULL。

2.explode array_pop//刪除數(shù)組的最后一個(gè)元素
$filename = "phpddt.jpg";
$arr = explode(".",$filename);
echo array_pop($arr); //輸出刪除的最后一個(gè)元素

3.pathinfo 
$filename = "phpddt.jpg";
$info = pathinfo($filename);
echo $info["extension"];//輸出擴(kuò)展名

4.pathinfo
$filename = "phpddt.jpg";
echo pathinfo($filename,PATHINFO_EXTENSION);

5.substr //切割字符串  strrpos

$filename = "phpddt.jpg";
echo substr($filename,strrpos($filename,".")+1);
// strrpos() 函數(shù)查找字符串在另一字符串中最后一次出現(xiàn)的位置。
二、算法題
1.冒泡
function bubble_sort($array){
    $count = count($array);
    if ($count <= 0) return false;
    for($i=0; $i<$count; $i++){
        for($j=$i+1; $j<$count; $j++){
            if ($array[$i] > $array[$j]){
                $tmp = $array[$i];
                $array[$i] = $array[$j];
                $array[$j] = $tmp;
            }
        }
    }
    return $array;
}
2.快速  //思路:數(shù)組小于或等于一不用排序,取數(shù)組第一個(gè)和所有的值比較小于第一個(gè)的在歸在左邊數(shù)組$left_array 大于第一個(gè)的歸于右邊數(shù)組,兩個(gè)數(shù)組遞歸主方法之后兩邊數(shù)據(jù)依次從小到大排列好,之后array_merge合并數(shù)組返回
function quick_sort($array) {
    if (count($array) <= 1) return $array;
    $key = $array[0];
    $left_arr = array();
    $right_arr = array();
    for ($i=1; $i
三.二分法查找數(shù)組元素
1.非遞歸  數(shù)組已排好序,知道數(shù)組的鍵值   查到就返回,沒(méi)查到返回-1
function binary(&$arr,$low,$top,$target){
    while($low <= $top){
//由于php取商是有小數(shù)的,所以向下取整,不過(guò)也可不加,數(shù)組也會(huì)取整
        $mid = floor(($low+$top)/2);
        echo $mid."
"; if($arr[$mid]==$target){ return $arr[$mid]; }elseif($arr[$mid]<$target){ $low = $mid+1; }else{ $top = $mid-1; } } return -1; } $arr = [1,4,7,12,34,45]; $rest = binary($arr,0,6,12); print_r($rest);exit;
2.遞歸
function bin_sch($array, $low, $high, $k){
    if ($low <= $high){
        $mid = intval(($low+$high)/2);
        if ($array[$mid] == $k){
            return $mid;
        }elseif ($k < $array[$mid]){
            return bin_sch($array, $low, $mid-1, $k);
        }else{
            return bin_sch($array, $mid+1, $high, $k);
        }
    }
    return -1;
}

$arr = [1,4,7,12,34,45];
$rest = binary($arr,0,6,12);
print_r($rest);exit;
四.寫一個(gè)二維數(shù)組排序算法函數(shù),能夠具有通用性,可以調(diào)用php內(nèi)置函數(shù)

//二維數(shù)組排序, $arr是數(shù)據(jù),$keys是排序的健值,$order是排序規(guī)則,1是升序,0是降序

$data = array();
$data[] = array("volume" => 67, "edition" => 2);
$data[] = array("volume" => 86, "edition" => 1);
$data[] = array("volume" => 85, "edition" => 6);
$data[] = array("volume" => 98, "edition" => 2);
$data[] = array("volume" => 86, "edition" => 6);
$data[] = array("volume" => 67, "edition" => 7);

function array_sort($arr, $keys, $order=1) {
    if (!is_array($arr)) {
        return false;
    }
    $keysvalue = array();
    foreach($arr as $key => $val) {
        $keysvalue[$key] = $val[$keys];
    }
    if($order==0){
        asort($keysvalue);
    }else {
        arsort($keysvalue);
    }
    $new_array = array();
    foreach($keysvalue as $key=>$value) {
        $new_array[$key] = $arr[$key];
    }

    return $new_array;
}

$rest = array_sort($data,"volume",0);
echo "
";
print_r($rest);exit;

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/22274.html

相關(guān)文章

  • php面試 匯集2

    摘要:用打印出前一天的時(shí)間格式是的區(qū)別和不是一個(gè)函數(shù),是一個(gè)語(yǔ)言結(jié)構(gòu)只有一個(gè)參數(shù)可以輸出多個(gè)參數(shù),返回和只能打印出,不能打印出結(jié)構(gòu)能打印出結(jié)構(gòu)比如加粗文字 1、用PHP打印出前一天的時(shí)間格式是2006-5-10 22:21:21 echo date(Y-m-d H:i:s,time()-60*60*24); $a = date(Y-m-d H:i:s, strtotime(-1 day));...

    BlackFlagBin 評(píng)論0 收藏0
  • 迷惑性的js面試匯集

    摘要:一般用于刪除對(duì)象的屬性,刪除后其結(jié)果為但其不能刪除變量。條件判斷為假的情況有,,,,,未定義對(duì)象。函數(shù)聲明寫在運(yùn)算符中,其為,但放在運(yùn)算符中的函數(shù)聲明在執(zhí)行階段是找不到的。將賦值給相當(dāng)于故其指向 1、delete的用法 (function(x){ delete x; console.log(x); })(1) 答案為1。delete一般用...

    JinB 評(píng)論0 收藏0
  • Android-Java面試

    摘要:好不容易在月號(hào)這天中午點(diǎn)左右接到了來(lái)自阿里的面試電話。這里會(huì)不斷收集和更新基礎(chǔ)相關(guān)的面試題,目前已收集題。面試重難點(diǎn)的和的打包過(guò)程多線程機(jī)制機(jī)制系統(tǒng)啟動(dòng)過(guò)程,啟動(dòng)過(guò)程等等掃清面試障礙最新面試經(jīng)驗(yàn)分享,此為第一篇,開(kāi)篇。 2016 年末,騰訊,百度,華為,搜狗和滴滴面試題匯總 2016 年未,騰訊,百度,華為,搜狗和滴滴面試題匯總 各大公司 Java 后端開(kāi)發(fā)面試題總結(jié) 各大公司 Jav...

    TalkingData 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<