導航:首頁 > 編程語言 > php面試題2015

php面試題2015

發布時間:2022-05-19 20:12:50

php面試問題,完全迷糊

我建議你不要去這家公司,理由如下:
1.面試題目闡述不明。比如,不同的系統登錄方式不完全相同,點擊按鈕不過重復提交而已,好的架構設計裡面根本不會出現任何問題。
2.出題者連一些基本術語都不清楚,SQL注入乃是一種對利用漏洞對網站進行攻擊的方法,出題者完全不是這個意思。
3.提出一些泛泛的問題,比如第三個問題,你自己都覺得很無語。
4.關於測試的三個問題4、5、6更是不知所雲。我請問,測試結束有行業統一的標准嗎?或者說從廣義上來說,測試會結束嗎?生成哪些文檔更加無厘頭,這完全視公司的規定而定。第6個問題更是讓人噴血,你看過唐伯虎點秋香裡面對穿腸嗎,就照那個噴。

② php面試題解答

1,
var x=document.getElementById("img1");
var title=document.getElementById("img1").title;
var sina_title=document.getElementById("img1").sina_title;

2,serialize(),unserialize();

3,編碼方式不同,urlencode()將字串以URL編碼。例如空格就會變成加號。
rawurlencode()將url編碼成url的字元串專用格式,特殊字元回轉換成百分號後面加兩個十六子介數字的格式。
4,strip_tags(),html_entity_decode();

5,$str=preg_replace("/\<script.*\>.*\<\/script\>/i","",$str);
6,左連接,左連接的表如果沒有匹配的數據不影響結果。
7
SELECT name,score FROM tl_user LEFT JOIN tl_score ON tl_user.ID=tl_score.ID
7 system(),exec(),passthru()
8,json_decode ,json_encode
9 isset() empty()
10 後者的許可權大於前者,後者是OFF的話,前者就算是E-ALL也沒用。
11,$_SERVER['REMOTE_ADDR'];
12,incov()
echo iconv("gbk",""UTF-8,"我們");
mb_convert_encoding($str, "GBK", "UTF-8")
13 explode() split() ;implode() join()
14 注意事項挺多的,懶得寫。

1,超時,伺服器已經關閉連接
2 靜態表欄位長度固定,自動填充,讀寫速度很快,便於緩存和修復,但比較占硬碟,動態表是欄位長度不固定,節省硬碟,但更復雜,容易產生碎片,速度慢,出問題後不容易重建。
3InnoDB和MyISAM是在使用MySQL最常用的兩個表類型,各有優缺點,視具體應用而定。基本的差別為:MyISAM類型不支持事務處理等高級處理,而InnoDB類型支持。MyISAM類型的表強調的是性能,其執行數度比InnoDB類型更快,但是不提供事務支持,而InnoDB提供事務支持已經外部鍵等高級資料庫功能。
MyIASM是IASM表的新版本,有如下擴展:
二進制層次的可移植性。
NULL列索引。
對變長行比ISAM表有更少的碎片。
支持大文件。
更好的索引壓縮
更好的鍵嗎統計分布。
更好和更快的auto_increment處理。
1.MySQL最大的優勢在於MyISAM引擎下的簡單SELECT,INSERT和UPDATE快速操作
2.MyISAM類型的數據文件可以在不同操作系統中COPY,這點很重要,布署的時候方便點。

以下是一些細節和具體實現的差別:
1.InnoDB不支持FULLTEXT類型的索引。
2.InnoDB 中不保存表的具體行數,也就是說,執行select count(*) from table時,InnoDB要掃描一遍整個表來計算有多少行,但是MyISAM只要簡單的讀出保存好的行數即可。注意的是,當count(*)語句包含 where條件時,兩種表的操作是一樣的。
3.對於AUTO_INCREMENT類型的欄位,InnoDB中必須包含只有該欄位的索引,但是在MyISAM表中,可以和其他欄位一起建立聯合索引。
4.DELETE FROM table時,InnoDB不會重新建立表,而是一行一行的刪除。
5.LOAD TABLE FROM MASTER操作對InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導入數據後再改成InnoDB表,但是對於使用的額外的InnoDB特性(例如外鍵)的表不適用。
另外,InnoDB表的行鎖也不是絕對的,如果在執行一個SQL語句時MySQL不能確定要掃描的范圍,InnoDB表同樣會鎖全表,例如update table set num=1 where name like 「%aaa%」
以暫對存儲引擎的認識,覺得 InnoDB 支持外鍵,在數據量可以用「龐大」來形容時,在有良好的 INDEX 的基礎上,InnoDB 的查詢速度應該比 MyISAM 要快。
在 Falcon 有穩定版本前,我想 MyISAM 是一個可用的選擇方案。
任何一種表都不是萬能的,只用恰當的針對業務類型來選擇合適的表類型,才能最大的發揮MySQL的性能優勢
3, 都是1 ^^懶得回答了,睡覺去。

③ php面試題


以下哪一句不會把 John 新增到 users 陣列?
$users[] = 'john';
成功把 John 新增到陣列 users。
array_add($users,』john』);
函式 array_add() 無定義。
array_push($users,『john』);
成功把 John 新增到陣列 users。
$users ||= 'john';
語法錯誤。
2.sort()、assort()、和 ksort() 有什麼分別?它們分別在什麼情況下使用?
sort()
根據陣列中元素的值,以英文字母順序排序,索引鍵會由 0 到 n-1 重新編號。主要是當陣列索引鍵的值無關疼癢時用來把陣列排序。
assort()
PHP 沒有 assort() 函式,所以可能是 asort() 的筆誤。
asort()
與 sort() 一樣把陣列的元素按英文字母順序來排列,不同的是所有索引鍵都獲得保留,特別適合替聯想陣列排序。
ksort()
根據陣列中索引鍵的值,以英文字母順序排序,特別適合用於希望把索引鍵排序的聯想陣列。
3.以下的代碼會產生什麼?為什麼?
$num =10;
function multiply(){
$num =$num *10;
}
multiply();
echo $num;
由於函式 multiply() 沒有指定 $num 為全域變數(例如 global $num 或者 $_GLOBALS['num']),所以 $num 的值是 10。
4. reference 跟一個正規的變數有什麼分別?如何 pass by reference?在什麼情況下我們需要這樣做?
Reference 傳送的是變數的地址而非它的值,所以在函式中改變一個變數的值時,整個應用都見到這個變數的新值。
一個正規變數傳送給函式的是它的值,當函式改變這個變數的值時,只有這個函式才見到新值,應用的其他部分仍然見到舊值。

$myVariable = "its' value";
Myfunction(&$myVariable); // 以 reference 傳送參數以 reference 傳送參數給函式,可以使函式改變了的變數,即使在函式結束後仍然保留新值。
5.些函式可以用來在現正執行的腳本中插入函式庫?
對這道題目不同的理解會有不同的答案,我的第一個想法是插入 PHP 函式庫不外乎 include()、include_once()、require()、require_once(),但細心再想,「函式庫」也應該包括 com 物件和 .net 函式庫,所以我們的答案也要分別包括 com_load 和 dotnet_load,下次有人提起「函式庫」的時候,別忘記這兩個函式。
6.foo() 與 @foo() 有什麼分別?
foo() 會執行這個函式,任何解譯錯誤、語法錯誤、執行錯誤都會在頁面上顯示出來。
@foo() 在執行這個函式時,會隱藏所有上述的錯誤訊息。
很多應用程式都使用 @mysql_connect() 和 @mysql_query 來隱藏 mysql 的錯誤訊息,我認為這是很嚴重的失誤,因為錯誤不該被隱藏,你必須妥善處理它們,可能的話解決它們。
7.你如何替 PHP 的應用程式偵錯?
我並不常這樣做,我曾經試過很多不同的偵錯工具,在 linux 系統中設定這些工具一點也不容易。不過以下我會介紹一個近來頗受注目的偵錯工具。
PHP - Advanced PHP Debugger 或稱 PHP - APD,第一步是執行以下的指令......一年四季春常在 萬紫千紅永開花 喜迎新春

④ PHP程序員上機面試題(並附答案,回答好的加分)

題集網上有一套php的面試題:http://www.tijee.com/tags/46-php-face-questions/posts

⑤ PHP面試題:PHP數組函數常見的有哪些

array_splice() 刪除數組中的指定元

array_splice(數組名,從前往後刪的個數,new一個數組的大小);沒有第三參數也就沒有返數組,沒有第三個參數時,第二個參數的意義為從前往後保留幾個

exp:
<?php $my_array=array( //建立數組 "hehe"=>"haha", "A"=>"lu", "lu"=>"ge" ); $new=array_splice($my_array,1,3); //使用array_splice(數組名,從前往後刪的個數,new一個數組的大小); var_mp($new); ?>
結果:array(2) { ["A"]=> string(2) "lu" ["lu"]=> string(2) "ge" }

2、foreach()數組的遍歷

用法:foreach(數組 as 鍵名=>鍵值)或foreach(數組 as 鍵值)

exp:
<?php $my_array=array( //建立數組 "hehe"=>"haha", "A"=>"lu", "lu"=>"ge" ); foreach($my_array as $key=>$value) { echo $key."=>".$value."<br/>"; } ?>
輸出結果:
hehe=>haha A=>lu lu=>ge

3、數組的排序

(1)sort()和rsort() 按鍵值排序sort()從小到大,rsort()從大到小

sort () exp :
<?php $my_array=array(1,2,3,6,7,8,9,4,5);//建立數組 sort($my_array); foreach($my_array as $keys=>$value) { echo $keys."=>".$value."<br/>"; } ?>
輸出結果:
0=>1 1=>2 2=>3 3=>4 4=>5 5=>6 6=>7 7=>8 8=>9
rsort() exp:
<?php $my_array=array(1,2,3,6,7,8,9,4,5);//建立數組 rsort($my_array); foreach($my_array as $keys=>$value) { echo $keys."=>".$value."<br/>"; } ?>
輸出結果:
0=>9 1=>8 2=>7 3=>6 4=>5 5=>4 6=>3 7=>2 8=>1
(2).asort()和arsort()和上面的原理一樣,不過不改變鍵名和鍵值的對應關系

exp:
<?php $my_array=array(1,2,3,6,7,8,9,4,5);//建立數組 asort($my_array); foreach($my_array as $keys=>$value) { echo $keys."=>".$value."<br/>"; } ?>
輸出結果:
0=>1 1=>2 2=>3 7=>4 8=>5 3=>6 4=>7 5=>8 6=>9
(3)ksort()和krsort()是按鍵名的大小排序

4.數組的數學類函數

array_sum()計算數組的所有鍵值的和 count()計算元素的個數

exp:
<?php $my_array=array(1,2,3,6,7,8,9,4,5);//建立數組 echo array_sum($my_array); ?>
輸出結果:45

5.其他函數

array_unique() 去除數組中的相同元素

in_array()檢測一個值是否在數組中(返回true和false)

array_search()返回的是鍵或值,返回的是鍵值所對應的鍵名

shuffle()打亂原有的數組
<?php $my_array=array(1,2,3,6,7,8,9,4,5,5,5,5);//建立數組 array_unique($my_array);//去除數組中的相同元素 var_mp($my_array); echo "<br/>"; echo in_array(5,$my_array); echo "<br/>"; $new=array_search(6,$my_array);//返回的是鍵值所對應的鍵名 echo $new; ?>
輸出結果:
array(12) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(6) [4]=> int(7) [5]=> int(8) [6]=> int(9) [7]=> int(4) [8]=> int(5) [9]=> int(5) [10]=> int(5) [11]=> int(5) } 1 3

⑥ PHP面試都會問什麼

簡單的列出10點供你參考吧
1、php基礎知識
2、常用函數使用
3、排序演算法
4、引用變數的理解
5、session cookie 的理解
6、http請求 get post php://input 使用
7、mysql資料庫鏈表查詢,索引優化方案等
8、linux基本命名的使用 crontab,grep ,tail等
9、緩存 redis,memcached等的使用
10、市場上常用的流行PHP框架掌握,熟悉情況

⑦ 求PHP面試題急忙

求職的朋友可以看看,不過也不要想著這些就一定有用,有時候工作中的經驗也是非常重要的。不過,基本知識點還是非常重要的。至於高階中的演算法問題,如果你不是做特別重要的任務,這些演算法你是碰不到的(做網游的除外);高階中的像冊處理,如果你真能處理好了,你單獨做一個產品出售也不成問題啊。

1. 基本知識點
HTTP協議中幾個狀態碼的含義:503 500 401 200 301 302
Include require include_once require_once 的區別.
PHP/Mysql中幾個版本的進化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改進等等。
HEREDOC介紹
寫出一些php魔幻方法;
一些編譯php時的configure 參數
向php傳入參數的兩種方法。
(mysql)請寫出數據類型(int char varchar datetime text)的意思; 請問varchar和char有什麼區別;
error_reporting 等調試函數使用
您是否用過版本控制軟體? 如果有您用的版本控制軟體的名字是?
posix和perl標準的正則表達式區別;
Safe_mode 打開後哪些地方受限.
寫代碼來解決多進程/線程同時讀寫一個文件的問題。
寫一段上傳文件的代碼。
Mysql 的存儲引擎,myisam和innodb的區別。

2. web 架構,安全,項目經驗
介紹xdebug,apc,eAccelerator,Xcache,Zend opt的使用經驗。
使用mod_rewrite,在伺服器上沒有/archivers/567.html這個物理文件時,重定向到index.php?id=567 ,請先打開mod_rewrite.
MySQL資料庫作發布系統的存儲,一天五萬條以上的增量,預計運維三年,怎麼優化?
寫出一種排序演算法(原理),並說出優化它的方法。
請簡單闡述您最得意的開發之作
對於大流量的網站,您採用什麼樣的方法來解決各頁面訪問量統計問題
您是否用過模板引擎? 如果有您用的模板引擎的名字是?
請介紹Session的原理,大型網站中Session方面應注意什麼?
測試php性能和mysql資料庫性能的工具,和找出瓶頸的方法。
正則提出一個網頁中的所有鏈接.
介紹一下常見的SSO(單點登陸)方案(比如dedecms整合discuz的passport)的原理。
您寫過的PHP框架的特點,主要解決什麼問題,與其他框架的不同點。
大型的論壇/新聞文章系統/SNS網站在性能優化上有什麼區別?
相冊類應用:要求在瀏覽器中能同時選中並上傳多個文件,圖片要求能剪裁,壓縮包在伺服器端解壓。能上傳單個達50M的文件。上傳過程中有進度條顯示。每個圖片能生成四種大小縮略圖,視頻文件要轉成flv供flash播放。敘述要涉及的各類開源軟體和簡單用途。
一群猴子排成一圈,按1,2,…,n依次編號。然後從第1隻開始數,數到第m只,把它踢出圈,從它後面再開始數,再數到第m只,在把它踢出去…, 如此不停的進行下去,直到最後只剩下一隻猴子為止,那隻猴子就叫做大王。要求編程模擬此過程,輸入m、n, 輸出最後那個大王的編號。用程序模擬該過程。

3. unix/linux 基本使用
linux下查看當前系統負載信息的一些方法。
vim的基本快捷鍵。
ssh 安全增強方法;密碼方式和rsa key 方式的配置。
rpm/apt/yum/ports 裝包,查詢,刪除的基本命令
Makefile的基本格式,gcc 編譯,連接的命令,-O0 和-O3區別。
gdb,strace,valgrind的基本使用.

4. 前端,HTML,JS
css盒模型。
javascript中的prototype。
javascript中this對象的作用域。
IE和firefox事件冒泡的不同。
什麼是怪異模式,標准模式,近標准模式。
DTD的定義
IE/firefox常用hack.
firefox,IE下的前端js/css調試工具。

⑧ PHP工程師面試常見問題有哪些

基礎知識,資料庫,框架,也很可能問你他們工作遇到的問題

⑨ PHP面試題誰有啊

1.以下哪一句不會把 John 新增到 users 陣列?
$users[] = 'john';
成功把 John 新增到陣列 users。
array_add($users,』john』);
函式 array_add() 無定義。
array_push($users,『john』);
成功把 John 新增到陣列 users。
$users ||= 'john';
語法錯誤。
2.sort()、assort()、和 ksort() 有什麼分別?它們分別在什麼情況下使用?
sort()
根據陣列中元素的值,以英文字母順序排序,索引鍵會由 0 到 n-1 重新編號。主要是當陣列索引鍵的值無關疼癢時用來把陣列排序。
assort()
PHP 沒有 assort() 函式,所以可能是 asort() 的筆誤。
asort()
與 sort() 一樣把陣列的元素按英文字母順序來排列,不同的是所有索引鍵都獲得保留,特別適合替聯想陣列排序。
ksort()
根據陣列中索引鍵的值,以英文字母順序排序,特別適合用於希望把索引鍵排序的聯想陣列。
3.以下的代碼會產生什麼?為什麼?
$num =10;
function multiply(){
$num =$num *10;
}
multiply();
echo $num;
由於函式 multiply() 沒有指定 $num 為全域變數(例如 global $num 或者 $_GLOBALS['num']),所以 $num 的值是 10。
4. reference 跟一個正規的變數有什麼分別?如何 pass by reference?在什麼情況下我們需要這樣做?
Reference 傳送的是變數的地址而非它的值,所以在函式中改變一個變數的值時,整個應用都見到這個變數的新值。
一個正規變數傳送給函式的是它的值,當函式改變這個變數的值時,只有這個函式才見到新值,應用的其他部分仍然見到舊值。

$myVariable = "its' value";
Myfunction(&$myVariable); // 以 reference 傳送參數以 reference 傳送參數給函式,可以使函式改變了的變數,即使在函式結束後仍然保留新值。
5.些函式可以用來在現正執行的腳本中插入函式庫?
對這道題目不同的理解會有不同的答案,我的第一個想法是插入 PHP 函式庫不外乎 include()、include_once()、require()、require_once(),但細心再想,「函式庫」也應該包括 com 物件和 .net 函式庫,所以我們的答案也要分別包括 com_load 和 dotnet_load,下次有人提起「函式庫」的時候,別忘記這兩個函式。
6.foo() 與 @foo() 有什麼分別?
foo() 會執行這個函式,任何解譯錯誤、語法錯誤、執行錯誤都會在頁面上顯示出來。
@foo() 在執行這個函式時,會隱藏所有上述的錯誤訊息。
很多應用程式都使用 @mysql_connect() 和 @mysql_query 來隱藏 mysql 的錯誤訊息,我認為這是很嚴重的失誤,因為錯誤不該被隱藏,你必須妥善處理它們,可能的話解決它們。
7.你如何替 PHP 的應用程式偵錯?
我並不常這樣做,我曾經試過很多不同的偵錯工具,在 Linux 系統中設定這些工具一點也不容易。不過以下我會介紹一個近來頗受注目的偵錯工具。
PHP - Advanced PHP Debugger 或稱 PHP - APD,第一步是執行以下的指令安裝:
pear install apd安裝後在你的腳本的開頭位置加入以下的語句開始進行偵錯:
apd_set_pprof_trace();執行完畢,打開以下檔案來查閱執行日誌:
apd.mpdir
你也可以使用 pprofp 來格式化日誌。
詳細的資料可以參閱 http://us.php.net/manual/en/ref.apd.php。
8.「===」是什麼?試舉一個「==」是真但「===」是假的例子。
「===」是給既可以送回布爾值「假」,也可以送回一個不是布爾值但卻可以賦與「假」值的函式,strpos() 和 strrpos() 便是其中兩個例子。
問題的第二部份有點困難,想一個「==」是假,但是「===」是真的例子卻很容易,相反的例子卻很少。但我終於找到以下的例子:
if (strpos("abc", "a") == true){ // 這部分永不會被執行,因為 "a" 的位置是 0,換算成布爾值「假」}if (strpos("abc", "a") === true){ // 這部份會被執行,因為「===」保證函式 strpos() 的送回值不會換算成布爾值.}
9.你會如何定義一個沒有成員函式或特性的類別 myclass?
class myclass{}
10.你如何產生一個 myclass 的物件?
$obj = new myclass();
11.在一個類別內如何存取這個類別的特性及變改它的值?
使用語句:$this->propertyName,例如:
class myclass{ private $propertyName; public function __construct() { $this->propertyName = "value"; }}
12.include 和 include_once 有什麼分別?require 又如何?
三者都是用來在腳本中插入其他檔案,視乎 url_allow_fopen 是否核准,這個檔案可以從系統內部或外部取得。但他們之間也有微細的分別:
include():這個函式容許你在腳本中把同一個檔案插入多次,若果檔案不存在,它會發出系統警告並繼續執行腳本。
include_once():它跟 include() 的功能相似,正如它的名字所示,在腳本的執行期間,有關檔案只會被插入一次。
require():跟 include() 差不多,它也是用來在腳本中插入其他檔案,但若果檔案不存在,它會發出系統警告,這個警告會引致致命錯誤令腳本中止執行
13.以下哪一個函式可以把瀏覽器轉向到另一個頁面?
redir()
這不是一個 PHP 函式,會引致執行錯誤。
header()
這個是正確答案,header() 用來插入卷頭資料,可以用來使瀏覽器轉向到另一個頁面,例如:
header("Location: http://www.search-this.com/");
location()
這不是一個 PHP 函式,會引致執行錯誤。
redirect()
這不是一個 PHP 函式,會引致執行錯誤。

14.以下哪一個函式可以用來開啟檔案以便讀/寫?
fget()
這不是一個 PHP 函式,會引致執行錯誤。
file_open()
這不是一個 PHP 函式,會引致執行錯誤。
fopen()
這是正確答案,fopen() 可以用來開啟檔案以便讀/寫,事實上這個函式還有很多選項,詳細資料請參閱 php.net。
open_file()
這不是一個 PHP 函式,會引致執行錯誤。
15.mysql_fetch_row() 和 mysql_fetch_array() 有什麼分別?
mysql_fetch_row() 把資料庫的一列儲存在一個以零為基數的陣列中,第一欄在陣列的索引 0,第二欄在索引 1,如此類推。mysql_fetch_assoc() 把資料庫的一列儲存在一個關聯陣列中,陣列的索引就是欄位名稱,例如我的資料庫查詢送回「first_name」、「last_name」、 「email」三個欄位,陣列的索引便是「first_name」、「last_name」和「email」。mysql_fetch_array() 可以同時送回 mysql_fetch_row() 和 mysql_fetch_assoc() 的值。
16.下面的代碼用來做什麼?請解釋。
$date='08/26/2003';print ereg_replace("([0-9]+)/([0-9]+)/([0-9]+)","[url=file://2///1///3%22,$date]\\2/\\1/\\3",$date[/url]);
這是把一個日期從 MM/DD/YYYY 的格式轉為 DD/MM/YYYY 格式。我的一個好朋友告訴我可以把這個正規表達式拆解為以下的語句,對於如此簡單的表示是來說其實無須拆解,純粹為了解說的方便:
// 對應一個或更多 0-9,後面緊隨一個斜號$regExpression = "([0-9]+)/";// 應一個或更多 0-9,後面緊隨另一個斜號$regExpression .= "([0-9]+)/";// 再次對應一個或更多 0-9$regExpression .= "([0-9]+)";至於 [url=file://2///1///3]\\2/\\1/\\3[/url] 則是用來對應括弧,第一個括弧對的是月份,第二個括弧對應的是日期,第三個括弧對應的是年份。
17.給你一行文字 $string,你會如何編寫一個正規表達式,把 $string 內的 HTML 標簽除去?
首先,PHP 有內建函式 strip_tags() 除去 HTML 標簽,為何要自行編寫正規表達式?好了,便當作是面試的一道考題吧,我會這樣回答:
$stringOfText = "<p>This is a test</p>";$expression = "/<(.*?)>(.*?)<\/(.*?)>/";echo preg_replace($expression, "[url=file://2/]\\2[/url]", $stringOfText);// 有人說也可以使用 /(<[^>]*>)/ $expression = "/(<[^>]*>)/";echo preg_replace($expression, "", $stringOfText);
18.PHP 和 Perl 分辨陣列和散列表的方法有什麼差異?
這正是為何我老是告訴別人選擇適當的編程語言,若果你只用一種語言的話你怎麼能回答這道問題?這道問題很簡單,Perl 所有陣列變數都是以 @ 開頭,例如 @myArray,PHP 則沿用 $ 作為所有變數的開頭,例如 $myArray。
至於 Perl 表示散列表則用 %,例如 %myHash,PHP 則沒有分別,仍是使用 $,例如 $myHash。
19.你如何利用 PHP 解決 HTTP 的無狀態本質?
最主要的倆各選擇是 session 和 cookie。使用 session 的方法是在每一頁的開始加上 session_start(),然後利用 $_SESSION 散列表來儲存 session 變數。至於 cookie 你只需記著一個原則:在輸出任何文字之前調用 set_cookie() 函式,此外只需使用 $_COOKIE 散列表便可以存取所有 cookie 變數。
還有一個不那麼可靠的方法,就是利用訪客的 IP 地址,這個方法有特定的危險性。
20.GD 函式庫用來做什麼?
這個可能是我最喜歡的函式庫,自從 PHP 4.3.0 版本後 GD 便內建在 PHP 系統中。這個函式庫讓你處理和顯示各式格式的圖檔,它的另一個常見用途是製作所圖檔。GD 以外的另一個選擇是 ImageMagick,但這個函式庫並不內建於 PHP 之中,必須由系統管理員安裝在伺服器上。
21.試寫出幾個輸出一段 HTML 代碼的方法。
嗯,你可以使用 PHP 中任何一種輸出語句,包括 echo、print、printf,大部分人都使用如下例的 echo:
echo "My string $variable";你也可以使用這種方法:
echo <<<ENDThis text is written to the screen as output and this $variable is parsed too. If you wanted you can have <span> HTML tags in here as well.</span> The END; remarks must be on a line of its own, and can't contain any extra white space.END;
22.PHP 比 Perl 好嗎?請討論。
我們不要為一個簡單的問題引發一場舌戰,正如我經常說的:「為工作選擇適合的語言,不要把工作遷就語言。」我個人認為 Perl 十分適合用作命令行工具,雖然它在網頁應用上也有不錯的表現,但是它的真正實力在命令行上才能充分發揮。同樣地,PHP 雖然可以在控制台的環境中使用,但是個人認為它在網頁應用上有更好的表現,PHP 有大量專門為網頁應用而設計的函式,Perl 則似乎以命令行為設計之本。
個人來說兩種語言我都喜歡,在大學期間我經常使用 Perl、PHP 和 Java,可惜工作上我使用 C#,但在家裡我花不少時間操練 PHP、Perl、Ruby(現正學習)和 Java,保持我的技能知識在最新狀態。很多人問我 C 和 C++ 怎麼樣,它們是否仍有機會在我的應用中佔一席位,我的答案基本上是「否」,我近來的工作主要集中在網頁開發,雖然 C 和 C++ 也可以用來寫網頁,但它們到底不是為這種工作而設計的,「為工作選擇適合的語言」,若果我需要編寫一個控制台應用,用來展示 bubble sort、quick sort 和 merge sort 的效能比較,我一定會使用 C / C++。若果我需要編寫一個相片簿系統,我會使用 PHP 或者 C#(我認為製作用戶介面方面 .NET 語言比網頁更加)。

⑩ PHP面試的內容一般有哪些一般會問那些問題有什麼技巧嗎

PHP程序員在面試的時候一般應該抓住以下幾個點。
一、應該介紹自己掌握的開發一種,主要介紹PHP語言的獨特語法以及如何使用,比如PHP語言會比CGI更快的執行動態頁面。
二、必須熟悉Oracle、Mysql等資料庫,並能簡單的介紹自己掌握的程度。由於php做出的動態頁面比用其他語言做出來的頁面在執行效率以及CGI方面高得多,所以你還需要在面試中說出自己的文檔撰寫能力很強。
三、PHP程序員應該具備獨立分析和解決問題的能力,可以在自我介紹中講講自己曾經遇到過的問題是如何解決的。讓面試官看到你的能力,這將會直接影響到你自我介紹的成功與否。
四、一個PHP程序員必須有良好的職業道德和工作態度,所以在面試中應該盡量講自己在做項目時的認真態度以及今後的工作規劃,表現出自己的進取心。
五、還有關於溝通能力和理解能力的體現,這個在與HR的交談中就可以表現出來,所以需要做的工作就是從容的有條理的把自我介紹說完,回答每一個問題時都應該簡潔明了,關於自我介紹可以提前做個草稿,背一下。
六、團隊合作能力也是企業非常看重的,在培訓中老師一般都會帶領大家做項目,大的項目一般會分小組,每個人都有相對應的任務,這就模擬了公司中的團隊合作,在自我介紹過程中要把做項目的具體流程以及相互協作的過程說出來,讓HR看到自己具備團隊合作的能力。
七、最後就是執行力,每當任務分配下來的時候該如何執行,還有自己講過職業規劃後該如何執行,還有在學習的過程中是如何人字形的,遇到困難又是如何執行的,這些都可以體現出php程序員的執行力,回答的時候抓住發現及時尋找原因,快速展開行動的這個主線即可。
八、最重要的是你的能力、技術以及自己的項目

閱讀全文

與php面試題2015相關的資料

熱點內容
python導出sap 瀏覽:513
車智匯app如何下載 瀏覽:434
python如何將圖片輸出到雲伺服器 瀏覽:838
貴陽螺桿壓縮冷凝機組組成 瀏覽:115
掃描製作pdf 瀏覽:515
2016奇駿車機如何安裝app 瀏覽:764
phpvc9x64 瀏覽:73
蜜語星球解壓 瀏覽:476
c語言編譯器怎麼打不開 瀏覽:818
海印程序員 瀏覽:648
為什麼華為手機找不到伺服器 瀏覽:664
pdf增減 瀏覽:608
雲伺服器怎麼公網架設網站 瀏覽:91
pythonrequests慢 瀏覽:140
excel保存沒有pdf 瀏覽:922
冰箱壓縮機管囗示意圖 瀏覽:497
許振民編譯局 瀏覽:625
雙網路加什麼伺服器好用 瀏覽:211
linux命令中文 瀏覽:839
python怎麼做物聯網 瀏覽:731