2023年新浪樂居面試資料

2021-06-07 19:00:17 字數 3732 閱讀 6149

一、

1、有如下html:

1)用js取得________方法取得該物件;

2)用________屬性取得屬性title的屬性值;

3)用________方法取得屬性sina_title的屬性值;

(1) document.getelementbyid(『img1′);

(2) document.getelementbyid(『img1′).getattribute(『title』);

(3) document.getelementbyid(『img1′).getattribute(『sina_title』);

2、php中對陣列序列化和反序列化的函式分別是______和_______;

serialize,upserialize

3、rawurlencode和urlencode函式的區別是__________________;

rawurlencode會將空格轉換為%20,urlencode會把空格轉換為+

4、php中過濾html的函式是_______,轉義的函式是____________;

strip_tags,htmlspecialchars

5、寫出用正則把html中的js指令碼過濾掉;

preg_replace(『//si","",$script);

6、sql中left join的含義是______________;

如果有乙個表tl_user儲存學生id和名字name,另外乙個表tl_score儲存學生id、科目subject和成績score(有的學生沒有考試成績),寫出sql語句列印出學生名字和各科總成績;

左聯接,首先將左表中所有資料取出,然後再將滿足where條件中的右表資料取出來。當此行的資料並不滿足where條件,則返回空.

select tu.name,sum(ts.score) as totalscore from tl.user left join tl_score on tl.uid = ts.uid;

7、寫出三個呼叫系統命令的函式;

system,passthru,exec

8、josn處理陣列的函式是;

json_encode,json_decode

9、php中判斷變數是否被設定是函式是_______;判斷是否為空的是___________;

isset,empty

10、error_reporting(「e_all」)和ini_set(「display_errors」, 「on」)的區別_________;

前者是設定錯誤顯示等級,e_all代表提示全部錯誤(包括notice,warnning和error)。後者是設定讓php顯示錯誤,在關於錯誤顯示控制中,後者的優先順序最高。

11、php寫出顯示客戶端ip的預定義變數________;提供來路url的是__________;

12、php把utf-8轉換成gbk的函式是___________;

iconv(『utf-8′,』gbk』,$str);

13、php中分割字串成陣列的函式__________,連線數組成字串的是_______;

explode,implode

14、php中類的靜態方法怎麼使用_____________________________________;

在類外部,使用:類名後面跟雙冒號,再後面是方法名,類似classname::staticfucntion(),由於靜態方法不屬於某個物件,而是隸屬於整個類,所以要用類名來呼叫它。

二、1、如下錯誤:mysql server not go away,的原因是什麼?(大概這是這樣)

應該是mysql has gone away吧?

一般情況下是由於max_allowed_packet設定的值過小導致的,max_allowed_packet用來控制緩衝區的包大小,有時在匯入資料的時候,此值過小就容易造成緩衝區容量不夠。將my.ini或my.cnf中的此值設定大一些即可解決。

還有一種可能是連線資料庫時使用了單例模式,多次運算元據庫但都使用的是同乙個連線,由於mysql處理每個執行緒也是佇列模式,當前乙個操作還沒執行完畢並且間隔小於wait_timeout所設定的值時就容易出現此問題,解決辦法是將wait_timeout的值設定大一些。

2、mysql的靜態表和動態表的區別,myisam和innodb的區別.

靜態表是當乙個表中沒有採用varchar,blob,text這種可變長字段時,此表就是靜態表,反之,如果乙個表內存在至少乙個可變長字段時,或者如果乙個表被用row_format=dynamic選項來建立,此表就為動態表。

myisam與innodb的區別在於,myisam不支援事務處理,因為其不用去做commit操作,所以操作起來速度會比innodb較快。innodb在安全性方面要好於myisam,由於支援事務處理,insert,update,delete,select。等操作在預設autocommit=0時,會將每乙個操作都當作乙個事務,可以進行rollback。如果autocommit=1時,每乙個操作後它都會自動提交此事務,會造成執行的效率很慢,大概會比myisam慢10倍。

3、$a = 1; $b = & $a;

unset($a),$b是否還是1,為什麼?

unset($b),$a是否還是1,為什麼?

都等於1。

在php中,引用賦值不同於指標的感念,他只是將另乙個變數名指向了某個記憶體位址。此題中:$b = &$a;只是將$b這個名字也指向了$a變數所指向的記憶體位址。unset時只是釋放了這個名字的指向,並沒有釋放記憶體中的值。另一方面講unset($a),其實也並未真正立刻釋放記憶體中的值,也只是釋放了這個名字的指向而已,該函式只有在變數值所佔空間超過256位元組長的時候才會釋放記憶體,並且只有當指向該值的所有變數(比如有引用變數指向該值)都被銷毀後,位址才會被釋放。

三、1、寫出至少三個函式,取檔名的字尾,如檔案』/as/image/bc.jpg』,得到 jpg或者.jpg。

function mygetextname1( $path )

function mygetextname2( $path )

function mygetextname3( $path )

2、寫乙個函式,算出兩個檔案的相對路徑如 $a = 『/a/b/c/d/e.php』; $b = 『/a/b/12/34/c.php』; 計算出 $b 相對於 $a 的相路徑。

$a = 『/a/b/c/d/e.php』;

$b = 『/a/b/12/34/c.php』;

//求$b相對於$a的相對路徑

function getrelativelypath($a,$b)

3、用二分法(也叫折半查詢法)查詢某元素,對像可以是有序陣列。

//二分法查詢乙個陣列中是否存在某值

function binsearchwitharray($array,$searchvalue)

elseif($searchvalue < $array[$mid])

else

}return $searchvalue.』沒找到』;}

$time = 1;

//要查詢的陣列

$array = array(1,5,8,101,13,19,25,50,60,199,35);

//要查詢的值

$searchvalue = 13;

//對陣列排序,二分法的關鍵

sort($array);

echo 『要查詢的值為:』,$searchvalue,』

』;echo binsearchwitharray($array,$searchvalue);

房貸計算器 源於新浪樂居

因為用到 所以記錄 房貸計算器 效果圖 公共方法 本金還款的月還款額 引數 年利率 貸款總額 貸款總月份 貸款當前月0 length 1 function getmonthmoney2 lilv,total,month,cur month 本息還款的月還款額 引數 年利率 貸款總額 貸款總月份 fu...

乙個朋友去新浪樂居面試時的面試題

以下是他回憶當時的筆試題 一 1 有如下html 1 用js取得 方法取得該物件 2 用 屬性取得屬性title的屬性值 3 用 方法取得屬性sina title的屬性值 2 php中對陣列序列化和反序列化的函式分別是 和 3 rawurlencode和urlencode函式的區別是 4 php中過...

Verizon 2023年資料洩露事故調查報告

本文講的是verizon 2012年資料洩露事故調查報告,根據verizon的最新報告顯示,在2011年,主要是黑客竊取了企業網路的大部分資料,而不是網路犯罪分子。verizon 2012年資料洩露事故調查報告 對世界範圍內855起 網路安全 事故進行了分析,其中涉及丟失的資料記錄為1.74萬條。超...