php練習(xí)筆試題_第1頁(yè)
php練習(xí)筆試題_第2頁(yè)
php練習(xí)筆試題_第3頁(yè)
php練習(xí)筆試題_第4頁(yè)
php練習(xí)筆試題_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、php練習(xí)筆試題1. echo count("abc"); 輸出什么?答:"1"count 計(jì)算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€(gè)數(shù)int count ( mixed $var , int $mode ), 如果 var 不是數(shù)組類型或者實(shí)現(xiàn)了 Countable 接口的對(duì)象,將返回 1,有一個(gè)例外,如果 var 是 NULL 則結(jié)果是 0。對(duì)于對(duì)象,如果安裝了 SPL,可以通過(guò)實(shí)現(xiàn) Countable 接口來(lái)調(diào)用 count()。該接口只有一個(gè)方法 count(),此方法返回 count() 函數(shù)的返回值。2. 用PHP寫出顯示客戶端IP與服務(wù)器IP的代

2、碼答:$_SERVER'SERVER_ADDR' 服務(wù)器$_SERVER'REMOTE_ADDR'客戶端function getOnlineIP()if (getenv('HTTP_CLIENT_IP') return getenv('HTTP_CLIENT_IP');if (getenv('HTTP_X_FORWARDED_FOR') return getenv('HTTP_X_FORWARDED_FOR');if ($_SERVER"REMOTE_ADDR") return

3、$_SERVER"REMOTE_ADDR"if (!empty($HTTP_SERVER_VARS'REMOTE_ADDR') return $HTTP_SERVER_VARS'REMOTE_ADDR'3. error_reporting(2047)什么作用?答:PHP 顯示所有錯(cuò)誤 E_ALL4. echo,print()和print_r()有什么區(qū)別?答:echo是一個(gè)語(yǔ)言結(jié)構(gòu),沒(méi)有返回值。print是一個(gè)函數(shù),返回int類型的值。只能打印int stringprint_r()是一個(gè)函數(shù),返回bool類型值,按結(jié)構(gòu)輸出變量的值。打印關(guān)于變

4、量的易于理解的信息數(shù)組、對(duì)象等5. 打開php.ini中的Safe_mode,會(huì)影響哪些函數(shù)?至少說(shuō)出6個(gè)。答:1:用戶輸入輸出函數(shù)(fopen() file() require(),只能用于調(diào)用這些函數(shù)有相同腳本的擁有者)2:創(chuàng)建新文件(限制用戶只在該用戶擁有目錄下創(chuàng)建文件)3:用戶調(diào)用popen() systen() exec()等腳本,只有腳本處在safe_mode_exec_dir配置指令指定的目 錄中才可能4:加強(qiáng)HTTP認(rèn)證,認(rèn)證腳本擁有者的UID的劃入認(rèn)證領(lǐng)域范圍內(nèi),此外啟用安全模式下,不會(huì)設(shè)置PHP_AUTH5:mysql服務(wù)器所用的用戶名必須與調(diào)用mysql_connect(

5、)的文件的擁有者用戶名相同6:受影響的函數(shù)變量以及配置命令達(dá)到40個(gè)6. 寫個(gè)函數(shù)來(lái)解決多線程同時(shí)讀寫一個(gè)文件的問(wèn)題。答:flock($hander,LOCK_EX); 這個(gè)可是內(nèi)置函數(shù)啊,這個(gè)尚待解決7. 請(qǐng)寫一個(gè)函數(shù)驗(yàn)證電子郵件的格式是否正確(要求使用正則)答:preg_match('/w-.+w-+(.w+)+$/', $email);8. 考SQL語(yǔ)句的題,題太長(zhǎng)了,實(shí)在不好回憶了。答:去理解別人的回憶是件很困難的事情9. MySQL數(shù)據(jù)庫(kù),一天一萬(wàn)條以上的增量,怎么優(yōu)化?答:我們?cè)鲞^(guò)短信SP的東西,有個(gè)短信發(fā)送的日志表,每天增量也很大,處理的方法是按月進(jìn)行分表,因?yàn)?/p>

6、是日志表,主要操作是操作,所以每月初自動(dòng)生成新的'數(shù)據(jù)表,數(shù)據(jù)插入到對(duì)應(yīng)月份的那張數(shù)據(jù)表。比如表明前綴是cdb_smslog 后面加200910 及時(shí)cdb_smslog_200910其他優(yōu)化方式暫時(shí)想不起來(lái),對(duì)于myISAM, 考慮容量的話,也有優(yōu)化的方案但是對(duì)于那種查詢操作的表的話,我的思路是根據(jù)作者的發(fā)布時(shí)間存儲(chǔ)到不同的表里面所以對(duì)sina那種海量數(shù)據(jù)的處理很感興趣,很好奇他們的處理方法,以前同事說(shuō)sina 的首頁(yè)同時(shí)操作10多個(gè)數(shù)據(jù)庫(kù)10. 寫出一種排序算法(要寫出代碼),并說(shuō)出優(yōu)化它的方法。答:/冒泡排序function maopao($arr) $count = count

7、($arr);for($i=0; $i<$count-1; +$i) for($j=0; $j<$count-$i-1; +$j) if($arr$j > $arr$j+1) $temp = $arr$j;$arr$j = $arr$j+1;$arr$j+1 = $temp;return $arr;/順序排序function shunxu($arr) $count = count($arr);for($i=0; $i<$count-1; +$i) $p = $i;for($j=$i+1; $j<$count; +$j) $p = $arr$p > $arr$

8、j ? $j : $p;if($p != $i) $tvalue = $arr$i;$arr$i = $arr$p;$arr$p = $tvalue;return $arr;ps:有人說(shuō)加個(gè)監(jiān)控,計(jì)算數(shù)組交換的頻度這對(duì)冒泡, 比如冒泡的第一次操作頻度為0,則無(wú)需操作,直接返回,因?yàn)橐呀?jīng)是排好序的數(shù)組11. 寫個(gè)函數(shù)用來(lái)對(duì)二維數(shù)組排序。答:function array_sort_by_any_row($array_name, $row_id, $order_type)$array_temp=array();foreach($array_name as $key=>$value)$array

9、_temp$key=$value$row_id;if($order_type="ASC") /順序asort($array_temp); else arsort($array_temp);$result_array=array();foreach($array_temp as $key=>$value)$result_array$key=$array_name$key;return $result_array;$arr = array(array('num'=>5, 'value'=>6),array('num

10、9;=>2, 'value'=>39),array('num'=>36, 'value'=>29);$sortarr = array_sort_by_any_row($arr, 'num', 'DESC');print_r($sortarr);12. 寫5個(gè)不同的自己的函數(shù),來(lái)截取一個(gè)全路徑的文件的擴(kuò)展名,允許封裝php庫(kù)中已有的函數(shù)。答:$path = str_replace('', '/',_FILE_);echo $path.''func

11、tion extname1($path) return strrchr($path, '.');function extname2($path) $position = strrpos($path, '.');return substr($path, $position);function extname3($path) $arr = explode('.', $path);return $arrcount($arr) - 1;function extname4($path) preg_match_all('/w/:-+.(w+)$/', $path, $out);return $out10;function extname5($path) return preg_replace('/.+.(w+)$/', '$1', basename($path);print_r(extname5($path);13. 一群猴子排成一圈,按1,2,.,n依次編號(hào)。然后從第1只開始數(shù),數(shù)到第m只,把它踢出圈,從它后面再開始數(shù),再數(shù)到第m只,在把它踢出去.,如此不停的進(jìn)行下去,直到最后

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論