從8月15號來到北京一直到今天,一月有余。來的這段時間一直準備筆試面試,大大小小的公司,亂七八糟面了10多家,近期才安頓下來。面試的這段時間感覺自己成長了不少。初來到這個陌生的城市一臉茫然,不會乘地鐵、不會有擠公交、不會恰如其分的生活。。。
面試是進入職場的第一道坎,因為我本身學校太一般的問題在面試中遇到了各種不爽,和那些高學歷的相比自己真是信心大跌。我面試的方向是php開發工程師,主要做網站后臺、APP接口等。我所面試的公司、試題、心得都在我的個人網站上,感興趣的可以看看:http://dwz.cn/1KMpea。下面是我這段時間總結的面試方面的??汲柕闹R點,希望對大家有所幫助,不對之處歡迎指出。
總結:
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)等鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答