1. 程式人生 > >針對php面試題中的問題的一些個人見解

針對php面試題中的問題的一些個人見解

翻了翻網上的php面試題,看到了一些問題,提出了個人的一些見解!

  1. 氣泡排序的優化!
    看網上的php面試題有氣泡排序,細察之下發現可以優化。
    原始碼:
<?php
function sort_Up ( $arr )
{
    if( !is_array($arr)  )
    {
        //傳進來不是陣列就return  false;
        return  false;
    }
    for($i=0;$i<count($arr);$i++)
    {
        for($j=0;$j<count($arr)-1;$j++)
        {
            if
( $arr[$j]> $arr[$j+1] ) {//如果陣列角標小的陣列的值大於陣列角標大的陣列的值則交換他們的值,實現冒泡 $temp = $arr[$j]; $arr[$j] = $arr[$j + 1]; $arr[$j + 1] = $temp; } } } return $arr; } var_dump(sort_Up ( [3,2,1] ));//打印出來是123 ?>

這上面的這個程式中可以看到,3個數(count(a

rr)=3,i<3;第二層$j<2.
流程圖:
這裡寫圖片描述
可以看到,裡層多運行了幾次迴圈。ji的增加是逐漸減少的,因為陣列中有序的元素個數在增加,無序的元素的個數在減少。
修改後的程式碼:


function sort_Up ( $arr )
{
    if( !is_array($arr)  )
    {
        //傳進來不是陣列就return  false;
        return  false;
    }
    for($i=0;$i<count($arr);$i++)
    {
        for($j=0;$j<count($arr
)-1-$i;$j++)//注意此處 { if( $arr[$j]> $arr[$j+1] ) { $temp = $arr[$j]; $arr[$j] = $arr[$j + 1]; $arr[$j + 1] = $temp; } } } return $arr; } var_dump(sort_Up ( [3,2,1] ));
  1. 變數的使用。
    在增加類的屬性時,變數的定義有多餘,或者說有的程式碼寫的很沒有必要。比如:
    class tree{
            public $handle=null;
            //...
    }
    $tree = tree();
    $new = $tree->data;
    $tree->data="213";

在這裡的變數newnulltree->data=”213”.效果一樣的!
後面接著看,,,,

相關推薦

針對php試題的問題的一些個人見解

翻了翻網上的php面試題,看到了一些問題,提出了個人的一些見解! 氣泡排序的優化! 看網上的php面試題有氣泡排序,細察之下發現可以優化。 原始碼: <?php function so

開發關於RunLoop和RunTime一些個人見解

RunLoop: 1.       實際上 RunLoop 就是一個函式,其內部是一個 do-while 迴圈。當你呼叫 CFRunLoopRun() 時,執行緒就會一直停留在這個迴圈裡;直到超時或被手動停止,該函式才會返回。 2.       作用:通過 RunLo

PHP試題詳解

今天 服務 等待 速度 用途 har pda 說明 lose 自己從網上找了幾份常考到的PHP面試題進行了整理,然後才有了這份PHP面試題,並且我把所有的題目進行了詳細分析和代碼分析,希望可以對大家有幫助,謝謝大家。 這份試題我也上傳到了百度雲,有需要的可以直接去百度雲下載

PHP試題,自己幾斤幾兩,看看就知道了

mysql配置 圖片 緩存 共享 負載 垂直 cookie 區別 簡歷 網上看到的一篇比較高級的面試題,自己幾斤幾兩,看看就知道了。想要往架構這方面的可以去找找答案了 0.簡單做一下自我介紹,? 然後談一下近三年來你的得意之作?1.面試官看過你的簡歷,會問一些你做的項目

10個值得深思的PHP試題

number 進制 程序 false convert val 數字轉換 str1 long 第一個問題關於弱類型 $str1 = ‘yabadabadoo‘; $str2 = ‘yaba‘; if (strpos($str1,$str2)) { echo "/""

php試題之二——數據結構和算法(高級部分)

ash item name queue lis 雙向 joseph test 數據結構和算法 二、數據結構和算法 1.使對象可以像數組一樣進行foreach循環,要求屬性必須是私有。(Iterator模式的PHP5實現,寫一類實現Iterator接口)(騰訊) <?

PHP試題及答案解析(8)—PHP綜合應用題

java應用程序 外殼 sleep 服務應用程序 解釋 源碼 use lee eve 1.寫出下列服務的用途和默認端口。 ftp、ssh、http、telnet、https ftp:File Transfer Protocol,文件傳輸協議,是應用層的協議,它基於傳輸層,

PHP試題之文件目錄操作

als brush 文件名 func ram class png 後綴 extension 獲取文件後綴,遍歷目錄層次 /** * 5種方式獲取文件後綴名 * 這道題其實就是考函數substr() strrchr() array_pop() strrpos() str

2017年8道php試題(真題+答案)

php 高級php1、<?php echo count(strlen(“http://php.net”)); ?>的執行結果是? 答案:1 講解:count(var)是用來統計數組或對象的元素個數的。當var是null或者空數組時,結果為0。如果var是普通變量,則返回1。正常情況下返回var中的

PHP試題集錦(一)

day clu 數據庫緩存 優勢 腳本 源代碼 任務 頁面 文件 1、用PHP打印出前一天的時間格式是2017-5-10 22:21:21(2分) Answer: $a = date("Y-m-d H:i:s", strtotime("-1 day")); pr

PHP試題--基礎

其它 作用 個數 區分 構建 deb 目前 沒有 關鍵字 1、PHP語言的一大優勢是跨平臺,什麽是跨平臺?一、PHP基礎: PHP的運行環境最優搭配為Apache+MySQL+PHP,此運行環境可以在不同操作系統(例如windows、Linux等)上配置,不受操作系統的限制

PHP 試題 PHP部分(一)

list get 一個 目標 span 快速 是把 true sta 1、雙引號和單引號的區別? 雙引號解釋變量,單引號不解釋變量; 雙引號裏插入單引號,其中單引號裏如果有變量的話,變量解釋; 雙引號解釋轉義字符,單引號不解釋轉義字符,但是解釋‘\和\\;

[筆試題]sizeof系列試題的易錯之處

-- png return ascii stream pointer .com func 指針的指針 sizeof系列筆試題看似簡單,其實如果不深入探究,很容易出錯,本人就有時敗在了這,特寫篇博客總結一番,引以為戒。 V1.0 32位和64位編譯器的區別 測試代碼如下: #

isset和empty有什麼區別? (PHP試題)

      1)如何檢測一個變數是否被定義 ;              isset為假    1,直接定義為假   2,未定義變數為假  3,unset銷

2018年最新PHP試題

面試之前多看看公司的資料,可以看出面試的公司主要做什麼,電商,資料庫,php函式,sql的優化,介面,session和cookie等經常會問到,都是必問之題,這其中有一部分題目摘抄自網路,回答也不錯 1.請自我介紹一下? 答:我叫xxx

試題】Java試題--基礎總結--個人學習記錄

1、Java執行緒的狀態 新建new:新建立一個執行緒物件。 就緒runnable:建立執行緒物件後呼叫start方法,此時執行緒進入可執行狀態,等待CPU的時間片,且其他所需資源已獲得。 執行running(一般不考慮這種狀態):執行緒分得CPU的時間片、資源後執行執行緒。 阻塞b

試題】Java試題--技術框架--個人學習記錄

1、看過哪些開源框架的原始碼   2、為什麼要用Redis,Redis有哪些優缺點?Redis如何實現擴容?   3、Netty是如何使用執行緒池的,為什麼這麼使用   4、為什麼要使用Spring,Spring的優缺點有哪些 &

試題】Java試題--技術深度--個人學習記錄

1、有沒有看過JDK原始碼,看過的類實現原理是什麼。 2、HTTP協議   TCP詳解 關於http協議 3、TCP協議   TCP詳解 關於http協議 4、一致性Hash演算法 5、JVM如何載入位元組碼檔案 loa

Reso | php試題(mysql基礎)

一. 基本的SQL語句 1. 查詢 select * from table 2. 更新 update table set field=value 3. 插入 insert [into] table (field) values(value) 4. 刪除 delete [from] table

2018經典PHP試題大全

2018PHP經典面試題大全彙總 2018/2/28 13:49:56 點選次數:4913   1、PHP語言的一大優勢是跨平臺,什麼是跨平臺?   PHP的執行環境最優搭配為Apache+MySQL+PHP,此執行環境可以在不同作業系統(例如windows、Linux等)上配置,不受作業系