41.頁面字符出現(xiàn)亂碼,怎么解決?
1.首先考慮當(dāng)前文件是不是設(shè)置了字符集。查看是不是meta標(biāo)簽中寫了charset,如果是php頁面還可以看看是不是
在header()函數(shù)中指定了charset;
例如:
header(“content-type:text/html;charset=utf-8”);
2.如果設(shè)置了字符集(也就是charset),那么判斷當(dāng)前文件保存的編碼格式是否跟頁面設(shè)置的字符集保持一致,
兩者必須保持統(tǒng)一;
3.如果涉及到從數(shù)據(jù)庫提取數(shù)據(jù),那么判斷數(shù)據(jù)庫查詢時的字符集是否跟當(dāng)前頁面設(shè)置的字符集一致,兩者必須統(tǒng)一,
例如:mysql_query(“set names utf8”)。
42. 正則表達(dá)式是什么?php中有哪些常用的跟正則相關(guān)的函數(shù)?請寫出一個email的正則,中國手機(jī)號碼和座機(jī)號碼的正則表達(dá)式?
正則表達(dá)式是用于描述字符排列模式的一種語法規(guī)則。正則表達(dá)式也叫做模式表達(dá)式。
網(wǎng)站開發(fā)中正則表達(dá)式最常用于表單提交信息前的客戶端驗(yàn)證。
比如驗(yàn)證用戶名是否輸入正確,密碼輸入是否符合要求,email、手機(jī)號碼等信息的輸入是否合法。
在php中正則表達(dá)式主要用于字符串的分割、匹配、查找和替換操作。
preg系列函數(shù)可以處理。具體有以下幾個:
string preg_quote ( string str [, string delimiter] )
轉(zhuǎn)義正則表達(dá)式字符 正則表達(dá)式的特殊字符包括:. \\ + * ? [ ^ ] $ ( ) { } = ! < > | :。
preg_replace -- 執(zhí)行正則表達(dá)式的搜索和替換
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
preg_replace_callback -- 用回調(diào)函數(shù)執(zhí)行正則表達(dá)式的搜索和替換
mixed preg_replace_callback ( mixed pattern, callback callback, mixed subject [, int limit] )
preg_split -- 用正則表達(dá)式分割字符串
array preg_split ( string pattern, string subject [, int limit [, int flags]] )
43. 如果想過濾掉某個字符串中所有的html標(biāo)記使用哪個函數(shù)?
44. preg_replace()和 str_ireplace()兩個函數(shù)在使用上有什么不同?preg_split()和split()函數(shù)如何使用?
45. 獲取當(dāng)前時間戳的函數(shù)主要有哪些?用PHP打印出今天的時間,格式是2010-12-10 22:21:21?
用PHP打印出前一天的時間格式是2010-12-10 22:21:21?如何把2010-12-25 10:30:25變成unix時間戳?
echo date ("Y-m-d H:i:s" ,strtotime(‘-1,days’));
date('Y-m-d H:i:s',time());
$unix_time = strtotime("2009-9-2 10:30:25");//變成unix時間戳
echo date("Y-m-d H:i:s",$unix_time);//格式化為正常時間格式
46. 在url中用get傳值的時候,若中文出現(xiàn)亂碼,應(yīng)該用哪個函數(shù)對中文進(jìn)行編碼?
用戶在網(wǎng)站表單提交數(shù)據(jù)的時候,為了防止腳本攻擊(比如用戶輸入
使用urlencode()對中文進(jìn)行編碼,使用urldecode()來解碼。
使用htmlspecialchars($_POST[‘title’])來過濾表單傳參就可以避免腳本攻擊。
47. 連接數(shù)據(jù)庫操作的步驟是什么?每一步的返回值是什么數(shù)據(jù)類型?尤其是mysql_query()返回什么數(shù)據(jù)類型?
48. 說說mysql_fetch_row() 和mysql_fetch_assoc()和mysql_fetch_array之間有什么區(qū)別?
第一個是返回結(jié)果集中的一行作為索引數(shù)組,第二個是返回關(guān)聯(lián)數(shù)組,而第三個既可以返回索引數(shù)組也可以返回關(guān)聯(lián)數(shù)組,取決于它的第二個參數(shù) MYSQL_BOTH MYSQL_NUM MYSQL_ASSOC 默認(rèn)為MYSQL_BOTH
$sql =”select * from table1”;
$result = mysql_query($sql);
mysql_fetch_array($result, MYSQL_NUM);
49. 請說出目前學(xué)過的返回是資源的函數(shù)?
mysql_connect();
mysql_query();只有這執(zhí)行select的時候成功,才返回資源,失敗返回FALSE
fopen();
50. 打開、關(guān)閉文件分別是什么函數(shù)? 文件讀寫是什么函數(shù)?刪除文件是哪個函數(shù)?
判斷一個文件是否存在是哪個函數(shù)?新建目錄是哪個函數(shù)?
51. 文件上傳需要注意哪些細(xì)節(jié)?怎么把文件保存到指定目錄?怎么避免上傳文件重名問題?
1.首現(xiàn)要在php.ini中開啟文件上傳;
2.在php.ini中有一個允許上傳的最大值,默認(rèn)是2MB。必要的時候可以更改;
3.上傳表單一定要記住在form標(biāo)簽中寫上enctype="multipart/form-data";
4. 提交方式 method 必須是 post;
5. 設(shè)定 type="file" 的表單控件;
6.要注意上傳文件的大小MAX_FILE_SIZE、文件類型是否符合要求,上傳后存放的路徑是否存在。
可以通過上傳的文件名獲取到文件后綴,然后使用時間戳+文件后綴的方式為文件重新命名,這樣就避免了重名。
可以自己設(shè)置上傳文件的保存目錄,與文件名拼湊形成一個文件路徑,使用move_uploaded_file(),就可以完成
將文件保存到指定目錄。
52. $_FILES是幾維數(shù)組?第一維和第二維的索引下標(biāo)分別是什么?批量上傳文件的時候需要注意什么?
二維數(shù)組。第一維是上傳控件的name,二維下標(biāo)分別為name/type/tmp_name/size/error.
53. header()函數(shù)主要的功能有哪些?使用過程中注意什么?
答:
54. 文件下載的時候如果使用header()函數(shù)?
答:header("content-type: application/octet-stream;charset=UTF-8"); //在這里加utf-8和在上面定義有什么區(qū)別?、??
header("accept-ranges: bytes");
header("accept-length: ".filesize($filedir.$filename));
header("content-disposition: attachment; filename=".$filedir.$filename);
55. 什么是ajax?ajax的原理是什么?ajax的核心技術(shù)是什么?ajax的優(yōu)缺點(diǎn)是什么?
ajax是asynchronous javascript and xml的縮寫,是javascript、xml、css、DOM等多個技術(shù)的組合。 '$'是jQuery的別名.
頁面中用戶的請求通過ajax引擎異步地與服務(wù)器進(jìn)行通信,服務(wù)器將請求的結(jié)果返回給這個ajax引擎,
最后由這個ajax引擎來決定將返回的數(shù)據(jù)顯示到頁面中的指定位置。Ajax最終實(shí)現(xiàn)了在一個頁面的指定位置可以加載另一個頁面所有的輸出內(nèi)容。
這樣就實(shí)現(xiàn)了一個靜態(tài)頁面也能獲取到數(shù)據(jù)庫中的返回數(shù)據(jù)信息了。所以ajax技術(shù)實(shí)現(xiàn)了一個靜態(tài)網(wǎng)頁在不刷新整個頁面的情況下與服務(wù)器通信,
減少了用戶等待時間,同時也從而降低了網(wǎng)絡(luò)流量,增強(qiáng)了客戶體驗(yàn)的友好程度。
Ajax的優(yōu)點(diǎn)是:
1. 減輕了服務(wù)器端負(fù)擔(dān),將一部分以前由服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)移到客戶端執(zhí)行,利用客戶端閑置的資源進(jìn)行處理;
2. 在只局部刷新的情況下更新頁面,增加了頁面反應(yīng)速度,使用戶體驗(yàn)更友好。
Ajax的缺點(diǎn)是不利于seo推廣優(yōu)化,因?yàn)樗阉饕鏌o法直接訪問到ajax請求的內(nèi)容。
ajax的核心技術(shù)是XMLHttpRequest,它是javascript中的一個對象。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com