亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

我家的貓450字作文

時間:2025-09-14 04:41:16 我要投稿

我家的貓450字作文

  基礎(chǔ)題:

我家的貓450字作文

  1.表單中 get與post提交方法的區(qū)別?

  答:get是發(fā)送請求HTTP協(xié)議通過url參數(shù)傳遞進(jìn)行接收,而post是實(shí)體數(shù)據(jù),可以通過表單提交大量信息.

  2.session與cookie的區(qū)別?

  答:session:儲存用戶訪問的全局唯一變量,存儲在服務(wù)器上的php指定的目錄中的(session_dir)的位置進(jìn)行的存放

  cookie:用來存儲連續(xù)訪問一個頁面時所使用,是存儲在客戶端,對于Cookie來說是存儲在用戶WIN的Temp目錄中的。

  兩者都可通過時間來設(shè)置時間長短

  3.數(shù)據(jù)庫中的事務(wù)是什么?

  答:事務(wù)(transaction)是作為一個單元的一組有序的數(shù)據(jù)庫操作。如果組中的所有操作都成功,則認(rèn)為事務(wù)成功,即使只有一個操作失敗,事務(wù)也不成功。如果所有操作 完成,事務(wù)則提交,其修改將作用于所有其他數(shù)據(jù)庫進(jìn)程。如果一個操作失敗,則事務(wù)將回滾,該事務(wù)所有操作的影響都將取消。

  簡述題:

  1、用PHP打印出前一天的時間格式是2006-5-10 22:21:21(2分)

  答:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’));

  2、echo(),print(),print_r()的區(qū)別(3分)

  答:echo是PHP語句, print和print_r是函數(shù),語句沒有返回值,函數(shù)可以有返回值(即便沒有用)

  print() 只能打印出簡單類型變量的值(如int,string)

  print_r() 可以打印出復(fù)雜類型變量的值(如數(shù)組,對象)

  echo 輸出一個或者多個字符串

  3、能夠使HTML和PHP分離開使用的模板(1分)

  答:Smarty,Dwoo,TinyButStrong,Template Lite,Savant,phemplate,XTemplate

  5、使用哪些工具進(jìn)行版本控制?(1分)

  答:cvs,svn,vss;

  6、如何實(shí)現(xiàn)字符串翻轉(zhuǎn)?(3分)

  答:echo strrev($a);

  7、優(yōu)化MYSQL數(shù)據(jù)庫的方法。(4分,多寫多得)

  答:

  1、選取最適用的字段屬性,盡可能減少定義字段長度,盡量把字段設(shè)置NOT NULL,例如’省份,性別’,最好設(shè)置為ENUM

  2、使用連接(JOIN)來代替子查詢:

  a.刪除沒有任何訂單客戶:DELETE FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)

  b.提取所有沒有訂單客戶:SELECT FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)

  c.提高b的速度優(yōu)化:SELECT FROM customerinfo LEFT JOIN orderid customerinfo.customerid=orderinfo.customerid

  WHERE orderinfo.customerid IS NULL

  3、使用聯(lián)合(UNION)來代替手動創(chuàng)建的臨時表

  a.創(chuàng)建臨時表:SELECT name FROM `nametest` UNION SELECT username FROM `nametest2`

  4、事務(wù)處理:

  a.保證數(shù)據(jù)完整性,例如添加和修改同時,兩者成立則都執(zhí)行,一者失敗都失敗

  mysql_query(“BEGIN”);

  mysql_query(“INSERT INTO customerinfo (name) 8i VALUES (‘$name1′)”;

  mysql_query(“SELECT * FROM `orderinfo` where customerid=”.$id”);

  mysql_query(“COMMIT”);

  5、鎖定表,優(yōu)化事務(wù)處理:

  a.我們用一個 SELECT 語句取出初始數(shù)據(jù),通過一些計算,用 UPDATE 語句將新值更新到表中。

  包含有 WRITE(write) 關(guān)鍵字的 LOCK TABLE 語句可以保證在 UNLOCK TABLES 命令被執(zhí)行之前,

  不會有其它的訪問來對 inventory 進(jìn)行插入、更新或者刪除的操作

  mysql_query(“LOCK TABLE customerinfo READ, orderinfo WRITE”);

  mysql_query(“SELECT customerid FROM `customerinfo` where id=”.$id);

  mysql_query(“UPDATE `orderinfo` SET ordertitle=’$title’ where customerid=”.$id);

  mysql_query(“UNLOCK TABLES”);

  6、使用外鍵,優(yōu)化鎖定表

  a.把customerinfo里的customerid映射到orderinfo里的customerid,

  任何一條沒有合法的customerid的記錄不會寫到orderinfo里

  CREATE TABLE customerinfo

  (

  customerid INT NOT NULL,

  PRIMARY KEY(customerid)

  )TYPE = INNODB;

  CREATE TABLE orderinfo

  (

  orderid INT NOT NULL,

  customerid INT NOT NULL,

  PRIMARY KEY(customerid,orderid),

  FOREIGN KEY (customerid) REFERENCES customerinfo

  (customerid) ON DELETE CASCADE

  )TYPE = INNODB;

  注意:’ON DELETE CASCADE’,該參數(shù)保證當(dāng)customerinfo表中的一條記錄刪除的話同時也會刪除order

  表中的該用戶的所有記錄,注意使用外鍵要定義事務(wù)安全類型為INNODB;

  7、建立索引:

  a.格式:

  (普通索引)->

  創(chuàng)建:CREATE INDEX <索引名> ON tablename (索引字段)

  修改:ALTER TABLE tablename ADD INDEX [索引名] (索引字段)

  創(chuàng)表指定索引:CREATE TABLE tablename([...],INDEX[索引名](索引字段))

  (唯一索引)->

  創(chuàng)建:CREATE UNIQUE <索引名> ON tablename (索引字段)

  修改:ALTER TABLE tablename ADD UNIQUE [索引名] (索引字段)

  創(chuàng)表指定索引:CREATE TABLE tablename([...],UNIQUE[索引名](索引字段))

  (主鍵)->

  它是唯一索引,一般在創(chuàng)建表是建立,格式為:

  CREATA TABLE tablename ([...],PRIMARY KEY[索引字段])

  8、優(yōu)化查詢語句

  a.最好在相同字段進(jìn)行比較操作,在建立好的索引字段上盡量減少函數(shù)操作

  例子1:

  SELECT * FROM order WHERE YEAR(orderDate)<2008;(慢)

  SELECT * FROM order WHERE orderDate<"2008-01-01";(快)

  例子2:

  SELECT * FROM order WHERE addtime/7<24;(慢)

  SELECT * FROM order WHERE addtime<24*7;(快)

  例子3:

  SELECT * FROM order WHERE title like "%good%";

  SELECT * FROM order WHERE title>=”good” and name<"good";

  8、PHP的意思(送1分)

  答:PHP是一個基于服務(wù)端來創(chuàng)建動態(tài)網(wǎng)站的腳本語言,您可以用PHP和HTML生成網(wǎng)站主頁

  9、MYSQL取得當(dāng)前時間的函數(shù)是?,格式化日期的函數(shù)是(2分)

  答:now(),date()

  10、實(shí)現(xiàn)中文字串截取無亂碼的方法。(3分)

  答:function GBsubstr($string, $start, $length) {

  if(strlen($string)>$length){

  $str=null;

  $len=$start+$length;

  for($i=$start;$i<$len;$i++){

  if(ord(substr($string,$i,1))>0xa0){

  $str.=substr($string,$i,2);

  $i++;

  }else{

  $str.=substr($string,$i,1);

  }

  }

  return $str.’…’;

  }else{

  return $string;

  }

  }

  11、您是否用過版本控制軟件? 如果有您用的版本控制軟件的名字是?(1分)

  12、您是否用過模板引擎? 如果有您用的模板引擎的名字是?(1分)

  答:用過,smarty

  13、請簡單闡述您最得意的開發(fā)之作(4分)

  答:信息分類

  14、對于大流量的網(wǎng)站,您采用什么樣的方法來解決訪問量問題?(4分)

  答:確認(rèn)服務(wù)器硬件是否足夠支持當(dāng)前的流量,數(shù)據(jù)庫讀寫分離,優(yōu)化數(shù)據(jù)表,

  程序功能規(guī)則,禁止外部的盜鏈,控制大文件的下載,使用不同主機(jī)分流主要流量

  15、用PHP寫出顯示客戶端IP與服務(wù)器IP的代碼1分)

  答:打印客戶端IP:echo $_SERVER['REMOTE_ADDR’]; 或者: getenv(‘REMOTE_ADDR’);

  打印服務(wù)器IP:echo gethostbyname(“www.bolaiwu.com”)

  16、語句include和require的區(qū)別是什么?為避免多次包含同一文件,可用(?)語句代替它們? (2分)

  答:require->require是無條件包含也就是如果一個流程里加入require,無論條件成立與否都會先執(zhí)行require

  include->include有返回值,而require沒有(可能因為如此require的速度比include快)

  注意:包含文件不存在或者語法錯誤的時候require是致命的,include不是

  17、如何修改SESSION的生存時間(1分).

  答:方法1:將php.ini中的session.gc_maxlifetime設(shè)置為9999重啟apache

  方法2:$savePath = “./session_save_dir/”;

  $lifeTime = 小時 * 秒;

  session_save_path($savePath);

  session_set_cookie_params($lifeTime);

  session_start();

  方法3:setcookie() and session_set_cookie_params($lifeTime);

  18、有一個網(wǎng)頁地址, 比如PHP開發(fā)資源網(wǎng)主頁: /pic/,如何得到它的內(nèi)容?($1分)

  答:方法1(對于PHP5及更高版本):

  $readcontents = fopen(“/pic/”, “rb”);

  $contents = stream_get_contents($readcontents);

  fclose($readcontents);

  echo $contents;

  方法2:

  echo file_get_contents(“/pic/”);

  19、在HTTP 1.0中,狀態(tài)碼401的含義是(?);如果返回“找不到文件”的提示,則可用 header 函數(shù),其語句為(?);(2分)

  答:狀態(tài)401代表未被授權(quán),header(“Location:www.xxx.php”);

  12、在PHP中,heredoc是一種特殊的字符串,它的結(jié)束標(biāo)志必須?(1分)

  答:heredoc的語法是用”<<<"加上自己定義成對的標(biāo)簽,在標(biāo)簽范圍內(nèi)的文字視為一個字符串

  例子:

  $str = <<

  my name is Jiang Qihui!

  SHOW;

  13、談?wù)刟sp,php,jsp的優(yōu)缺點(diǎn)(1分)

  答:ASP全名Active Server Pages,是一個WEB服務(wù)器端的開發(fā)環(huán)境, 利用它可以產(chǎn)生和運(yùn)

  行動態(tài)的、交互的、高性能的WEB服務(wù)應(yīng)用程序。ASP采用腳本語言VB Script(Java script

  )作為自己的開發(fā)語言。

  PHP是一種跨平臺的服務(wù)器端的嵌入式腳本語言. 它大量地借用C,Java和Perl語言的語法

  , 并耦合PHP自己的特性,使WEB開發(fā)者能夠快速地寫出動態(tài)生成頁面.它支持目前絕大多數(shù)數(shù)

  據(jù)庫。還有一點(diǎn),PHP是完全免費(fèi)的,不用花錢,你可以從PHP官方站點(diǎn)(/pic/p>

  t)自由下載。而且你可以不受限制地獲得源碼,甚至可以從中加進(jìn)你自己需要的特色。

  JSP 是Sun公司推出的新一代站點(diǎn)開發(fā)語言,他完全解決了目前ASP,PHP的一個通病--

  腳本級執(zhí)行(據(jù)說PHP4 也已經(jīng)在Zend 的支持下,實(shí)現(xiàn)編譯運(yùn)行).Sun 公司借助自己在Jav

  a 上的不凡造詣,將Java 從Java 應(yīng)用程序 和 Java Applet 之外,又有新的碩果,就是Js

  p--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能強(qiáng)大的站點(diǎn)

  程序。

  三者都提供在 HTML 代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。

  但JSP代碼被編譯成 Servlet 并由 Java 虛擬機(jī)解釋執(zhí)行,這種編譯操作僅在對 JSP 頁面的

  第一次請求時發(fā)生。在 ASP 、PHP、JSP 環(huán)境下, HTML 代碼主要負(fù)責(zé)描述信息的顯示樣式

  ,而程序代碼則用來描述處理邏輯。普通的 HTML 頁面只依賴于 Web 服務(wù)器,而 ASP 、PH

  P、JSP 頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到

  HTML 代碼中,然后一起發(fā)送給瀏覽器。 ASP 、PHP、 JSP三者都是面向 Web 服務(wù)器的技術(shù)

  ,客戶端瀏覽器不需要任何附加的軟件支持。

  14、談?wù)剬vc的認(rèn)識(1分)

  答:由模型(model),視圖(view),控制器(controller)完成的應(yīng)用程序

  由模型發(fā)出要實(shí)現(xiàn)的功能到控制器,控制器接收組織功能傳遞給視圖;

  15、寫出發(fā)貼數(shù)最多的十個人名字的SQL,利用下表:members(id,username,posts,pass,email)(2分)

  答:SELECT * FROM `members` ORDER BY posts DESC limit 0,10;

  16. 請說明php中傳值與傳引用的區(qū)別。什么時候傳值什么時候傳引用?(2分)

  答:按值傳遞:函數(shù)范圍內(nèi)對值的任何改變在函數(shù)外部都會被忽略

  按引用傳遞:函數(shù)范圍內(nèi)對值的任何改變在函數(shù)外部也能反映出這些修改

  優(yōu)缺點(diǎn):按值傳遞時,php必須復(fù)制值。特別是對于大型的字符串和對象來說,這將會是一個代價很大的操作。

  按引用傳遞則不需要復(fù)制值,對于性能提高很有好處。

  17. 在PHP中error_reporting這個函數(shù)有什么作用? (1分)

  答:設(shè)置錯誤級別與錯誤信息回報

  18. 請寫一個函數(shù)驗證電子郵件的格式是否正確 (2分)

  dy@sina.com

  8047@qq.com

  yahu@.com.cn

  dy@163.com

  dy_35

  答:function checkEmail($email)

  {

  $pregEmail = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i";

  return preg_match($pregEmail,$email);

  }

  19. 簡述如何得到當(dāng)前執(zhí)行腳本路徑,包括所得到參數(shù)。(2分)

  答:$script_name = basename(__file__); print_r($script_name);

  21、JS表單彈出對話框函數(shù)是?獲得輸入焦點(diǎn)函數(shù)是? (2分)

  答:彈出對話框: alert(),prompt(),confirm()

  獲得輸入焦點(diǎn) focus()

  22、JS的轉(zhuǎn)向函數(shù)是?怎么引入一個外部JS文件?(2分)

  答:window.location.href,

  23、foo()和@foo()之間有什么區(qū)別?(1分)

  答:@foo()控制錯誤輸出

  24、如何聲明一個名為”myclass”的沒有方法和屬性的類? (1分)

  答:class myclass{ }

  25、如何實(shí)例化一個名為”myclass”的對象?(1分)

  答:new myclass()

  26、你如何訪問和設(shè)置一個類的屬性? (2分)

  答:$object = new myclass();

  $newstr = $object->test;

  $object->test = "info";

  27、mysql_fetch_row() 和mysql_fetch_array之間有什么區(qū)別? (1分)

  答:mysql_fetch_row是從結(jié)果集取出1行數(shù)組,作為枚舉

  mysql_fetch_array是從結(jié)果集取出一行數(shù)組作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,兩者兼得

  28、GD庫是做什么用的? (1分)

  答:gd庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。

  在網(wǎng)站上GD庫通常用來生成縮略圖或者用來對圖片加水印或者對網(wǎng)站數(shù)據(jù)生成報表。

  29、指出一些在PHP輸入一段HTML代碼的辦法。(1分)

  答:echo "aaa";

  30、下面哪個函數(shù)可以打開一個文件,以對文件進(jìn)行讀和寫操作?(1分)

  (a) fget() (b) file_open() (c) fopen() (d) open_file() [ c ]

  31、下面哪個選項沒有將 john 添加到users 數(shù)組中? (1分)

  (a) $users[] = 'john’;

  (b) array_add($users,’john’);

  (c) array_push($users,'john’);

  (d) $users ||= 'john’; [ a , c ]

  32、下面的程序會輸入是否?(1分)

  $num = 10;

  function multiply(){

  $num = $num * 10;

  }

  multiply();

  echo $num;

  ?>

  輸出:10

  33、使用php寫一段簡單查詢,查出所有姓名為“張三”的內(nèi)容并打印出來 (2分)

  表名User

  Name Tel Content Date

  張三 13333663366 大專畢業(yè) 2006-10-11

  張三 13612312331 本科畢業(yè) 2006-10-15

  張四 021-55665566 中專畢業(yè) 2006-10-15

  請根據(jù)上面的題目完成代碼:

  $mysql_db=mysql_connect("local","root","pass");

  @mysql_select_db("DB",$mysql_db);

  $result = mysql_query("SELECT * FROM `user` WHERE name='張三'");

  while($rs = mysql_fetch_array($result)){

  echo $rs["tel"].$rs["content"].$rs["date"];

  }

  34、如何使用下面的類,并解釋下面什么意思?(3)

  class test{

  function Get_test($num){

  $num=md5(md5($num)."En");

  return $num;

  }

  }

  答:$testnum = "123";

  $object = new test();

  $encrypt = $object->Get_test($testnum);

  echo $encrypt;

  類test里面包含Get_test方法,實(shí)例化類調(diào)用方法多字符串加密

  35、寫出 SQL語句的格式 : 插入 ,更新 ,刪除 (4分)

  表名User

  Name Tel Content Date

  張三 13333663366 大專畢業(yè) 2006-10-11

  張三 13612312331 本科畢業(yè) 2006-10-15

  張四 021-55665566 中專畢業(yè) 2006-10-15

  (a) 有一新記錄(小王 13254748547 高中畢業(yè) 2007-05-06)請用SQL語句新增至表中

  mysql_query("INSERT INTO `user` (name,tel,content,date) VALUES

  ('小王','13254748547','高中畢業(yè)','2007-05-06')")

  (b) 請用sql語句把張三的時間更新成為當(dāng)前系統(tǒng)時間

  $nowDate = date("Ymd");

  mysql_query("UPDATE `user` SET date='".$nowDate."' WHERE name='張山'");

  (c) 請寫出刪除名為張四的全部記錄

  mysql_query("DELETE FROM `user` WHERE name='張四'");

  36、請寫出數(shù)據(jù)類型(int char varchar datetime text)的意思; 請問varchar和char有什么區(qū)別(2分)

  答:int是數(shù)字類型,char固定長度字符串,varchar實(shí)際長度字符串,datetime日期時間型,text文本字符串

  char的場地固定為創(chuàng)建表設(shè)置的長度,varchar為可變長度的字符

  38、寫出以下程序的輸出結(jié)果 (1分)

  $b=201;

  $c=40;

  $a=$b>$c?4:5;

  echo $a;

  ?>

  答:4

  39、檢測一個變量是否有設(shè)置的函數(shù)是否?是否為空的函數(shù)是?(2分)

  答:isset($str),empty($str);

  40、取得查詢結(jié)果集總數(shù)的函數(shù)是?(1分)

  答:mysql_num_rows($result);

  41、$arr = array('james', 'tom', 'symfony'); 請打印出第一個元素的值 (1分)

  答:echo $array[0];

  42、請將41題的數(shù)組的值用','號分隔并合并成字串輸出(1分)

  答:for($i=0;$i 43、$a = 'abcdef'; 請取出$a的值并打印出第一個字母(1分)

  答:echo $a{0} 或 echo substr($a,0,1)

  44、PHP可以和sql server/oracle等數(shù)據(jù)庫連接嗎?(1分)

  答:當(dāng)然可以

  45、請寫出PHP5權(quán)限控制修飾符(3分)

  答:public(公共),private(私用),protected(繼承)

  46、請寫出php5的構(gòu)造函數(shù)和析構(gòu)函數(shù)(2分)

  答:__construct , __destruct

  47、完成以下:

  (一)創(chuàng)建新聞發(fā)布系統(tǒng),表名為message有如下字段 (3分)

  id 文章id

  title 文章標(biāo)題

  content 文章內(nèi)容

  category_id 文章分類id

  hits 點(diǎn)擊量

  答:CREATE TABLE 'message'(

  'id' int(10) NOT NULL auto_increment,

  'title' varchar(200) default NULL,

  'content' text,

  'category_id' int(10) NOT NULL,

  'hits' int(20),

  PRIMARY KEY('id');

  )ENGINE=InnoDB DEFAULT CHARSET=utf8;

  (二)同樣上述新聞發(fā)布系統(tǒng):表comment記錄用戶回復(fù)內(nèi)容,字段如下 (4分)

  comment_id 回復(fù)id

  id 文章id,關(guān)聯(lián)message表中的id

  comment_content 回復(fù)內(nèi)容

  現(xiàn)通過查詢數(shù)據(jù)庫需要得到以下格式的文章標(biāo)題列表,并按照回復(fù)數(shù)量排序,回復(fù)最高的排在最前面

  文章id 文章標(biāo)題 點(diǎn)擊量 回復(fù)數(shù)量

  用一個SQL語句完成上述查詢,如果文章沒有回復(fù)則回復(fù)數(shù)量顯示為0

  答:SELECT message.id id,message.title title,IF(message.`hits` IS NULL,0,message.`hits`) hits,

  IF(comment.`id` is NULL,0,count(*)) number FROM message LEFT JOIN

  comment ON message.id=comment.id GROUP BY message.`id`;

  (三)上述內(nèi)容管理系統(tǒng),表category保存分類信息,字段如下 (3分)

  category_id int(4) not null auto_increment;

  categroy_name varchar(40) not null;

  用戶輸入文章時,通過選擇下拉菜單選定文章分類

  寫出如何實(shí)現(xiàn)這個下拉菜單

  答:function categoryList()

  {

  $result=mysql_query("select category_id,categroy_name from category")

  or die("Invalid query: " . mysql_error());

  print("

  \n"); while($rowArray=mysql_fetch_array($result)) { print(" \n"); } print("

  ");

  }

  編程題:

  1. 寫一個函數(shù),盡可能高效的,從一個標(biāo)準(zhǔn) url 里取出文件的擴(kuò)展名

  例如: /pic/abc/de/fg.php?id=1 需要取出 php 或 .php

  答案1:

  function getExt($url){

  $arr = parse_url($url);

  $file = basename($arr['path']);

  $ext = explode(".",$file);

  return $ext[1];

  }

  答案2:

  function getExt($url) {

  $url = basename($url);

  $pos1 = strpos($url,".");

  $pos2 = strpos($url,"?");

  if(strstr($url,"?")){

  return substr($url,$pos1 + 1,$pos2 - $pos1 - 1);

  } else {

  return substr($url,$pos1);

  }

  }

  2. 在 HTML 語言中,頁面頭部的 meta 標(biāo)記可以用來輸出文件的編碼格式,以下是一個標(biāo)準(zhǔn)的 meta 語句

  請使用 PHP 語言寫一個函數(shù),把一個標(biāo)準(zhǔn) HTML 頁面中的類似 meta 標(biāo)記中的 charset 部分值改為 big5

  請注意:

  1. 需要處理完整的 html 頁面,即不光此 meta 語句

  2. 忽略大小寫

  3. ' 和 " 在此處是可以互換的

  4. 'Content-Type' 兩側(cè)的引號是可以忽略的,但 'text/html; charset=gbk' 兩側(cè)的不行

  5. 注意處理多余空格

  3. 寫一個函數(shù),算出兩個文件的相對路徑

  如 $a = '/a/b/c/d/e.php';

  $b = '/a/b/12/34/c.php';

  計算出 $b 相對于 $a 的相對路徑應(yīng)該是 /pic/c/d將()添上

  答:function getRelativePath($a, $b) {

  $returnPath = array(dirname($b));

  $arrA = explode('/', $a);

  $arrB = explode('/', $returnPath[0]);

  for ($n = 1, $len = count($arrB); $n < $len; $n++) {

  if ($arrA[$n] != $arrB[$n]) {

  break;

  }

  }

  if ($len - $n > 0) {

  $returnPath = array_merge($returnPath, array_fill(1, $len - $n, '..'));

  }

  $returnPath = array_merge($returnPath, array_slice($arrA, $n));

  return implode('/', $returnPath);

  }

  echo getRelativePath($a, $b);

  填空題:

  1.在PHP中,當(dāng)前腳本的名稱(不包括路徑和查詢字符串)記錄在預(yù)定義變量__$_SERVER['PHP_SELF']__中;而鏈接到當(dāng)前頁面的URL記錄在預(yù)定義變量__$_SERVER['HTTP_REFERER']__

  中

  2.執(zhí)行程序段將輸出__0__。

  3.在HTTP 1.0中,狀態(tài)碼 401 的含義是____;如果返回“找不到文件”的提示,則可用 header 函數(shù),其語句為____。

  4.數(shù)組函數(shù) arsort 的作用是__對數(shù)組進(jìn)行逆向排序并保持索引關(guān)系__;語句 error_reporting(2047)的作用是__報告所有錯誤和警告__。

  5.PEAR中的數(shù)據(jù)庫連接字符串格式是____。

  6.寫出一個正則表達(dá)式,過慮網(wǎng)頁上的所有JS/VBS腳本(即把scrīpt標(biāo)記及其內(nèi)容都去掉):preg_replace("/].*?>.*?/si", "newinfo", $script);

  7.以Apache模塊的方式安裝PHP,在文件http.conf中首先要用語句____動態(tài)裝載PHP模塊,然后再用語句____使得Apache把所有擴(kuò)展名為php的文件都作為PHP腳本處理。

  LoadModule php5_module "c:/php/php5apache2.dll" , AddType application/x-httpd-php .php,

  8.語句 include 和 require 都能把另外一個文件包含到當(dāng)前文件中,它們的區(qū)別是____;為了避免多次包含同一文件,可以用語句__require_once||include_once__來代替它們。

  9.類的屬性可以序列化后保存到 session 中,從而以后可以恢復(fù)整個類,這要用到的函數(shù)是____。

  10.一個函數(shù)的參數(shù)不能是對變量的引用,除非在php.ini中把__allow_call_time_pass_reference boolean__設(shè)為on.

  11.SQL中LEFT JOIN的含義是__自然左外鏈接__。如果 tbl_user記錄了學(xué)生的姓名(name)和學(xué)號(ID),tbl_score記錄了學(xué)生(有的學(xué)生考試以后被開除了,沒有其記錄)的學(xué)號(ID)

  和考試成績(score)以及考試科目(subject),要想打印出各個學(xué)生姓名及對應(yīng)的的各科總成績,則可以用SQL語句____。

  12.在PHP中,heredoc是一種特殊的字符串,它的結(jié)束標(biāo)志必須____。

  編程題:

  13.寫一個函數(shù),能夠遍歷一個文件夾下的所有文件和子文件夾。

  答:

  function my_scandir($dir)

  {

  $files = array();

  if ( $handle = opendir($dir) ) {

  while ( ($file = readdir($handle)) !== false ) {

  if ( $file != ".." && $file != "." ) {

  if ( is_dir($dir . "/" . $file) ) {

  $files[$file] = scandir($dir . "/" . $file);

  }else {

  $files[] = $file;

  }

  }

  }

  closedir($handle);

  return $files;

  }

  }

  14.簡述論壇中無限分類的實(shí)現(xiàn)原理。

  答:

  /*

  數(shù)據(jù)表結(jié)構(gòu)如下:

  CREATE TABLE `category` (

  `categoryID` smallint(5) unsigned NOT NULL auto_increment,

  `categoryParentID` smallint(5) unsigned NOT NULL default '0',

  `categoryName` varchar(50) NOT NULL default '',

  PRIMARY KEY (`categoryID`)

  ) ENGINE=MyISAM DEFAULT CHARSET=gbk;

  INSERT INTO `category` ( `categoryParentID`, `categoryName`) VALUES

  (0, '一級類別'),

  (1, '二級類別'),

  (1, '二級類別'),

  (1, '二級類別'),

  (2, '三級類別'),

  (2, '333332'),

  (2, '234234'),

  (3, 'aqqqqqd'),

  (4, '哈哈'),

  (5, '66333666');

  */

  /pic/p>

  /pic/p>

  function Get_Category($category_id = 0,$level = 0, $default_category = 0)

  {

  global $DB;

  $sql = "SELECT * FROM category ORDER BY categoryID DESC";

  $result = $DB->query( $sql );

  while ($rows = $DB->fetch_array($result))

  {

  $category_array[$rows[categoryParentID]][$rows[categoryID]] = array('id' => $rows[categoryID], 'parent' => $rows[categoryParentID], 'name' => $rows

  [categoryName]);

  }

  if (!isset($category_array[$category_id]))

  {

  return "";

  }

  foreach($category_array[$category_id] AS $key => $category)

  {

  if ($category['id'] == $default_category)

  {

  echo "

  \n";

  }

  else

  {

  echo ">" . $category['name'] . "

  \n";

  }

  Get_Category($key, $level + 1, $default_category);

  }

  unset($category_array[$category_id]);

  }

  /*

  函數(shù)返回的數(shù)組格式如下所示:

  Array

  (

  [1] => Array ( [id] => 1 [name] => 一級類別 [level] => 0 [ParentID] => 0 )

  [4] => Array ( [id] => 4 [name] => 二級類別 [level] => 1 [ParentID] => 1 )

  [9] => Array ( [id] => 9 [name] => 哈哈 [level] => 2 [ParentID] => 4 )

  [3] => Array ( [id] => 3 [name] => 二級類別 [level] => 1 [ParentID] => 1 )

  [8] => Array ( [id] => 8 [name] => aqqqqqd [level] => 2 [ParentID] => 3 )

  [2] => Array ( [id] => 2 [name] => 二級類別 [level] => 1 [ParentID] => 1 )

  [7] => Array ( [id] => 7 [name] => 234234 [level] => 2 [ParentID] => 2 )

  [6] => Array ( [id] => 6 [name] => 333332 [level] => 2 [ParentID] => 2 )

  [5] => Array ( [id] => 5 [name] => 三級類別 [level] => 2 [ParentID] => 2 )

  [10] => Array ( [id] => 10 [name] => 66333666 [level] => 3 [ParentID] => 5 )

  )

  */

  /pic/p>

  function Category_array($category_id = 0,$level=0)

  {

  global $DB;

  $sql = "SELECT * FROM category ORDER BY categoryID DESC";

  $result = $DB->query($sql);

  while ($rows = $DB->fetch_array($result))

  {

  $category_array[$rows['categoryParentID']][$rows['categoryID']] = $rows;

  }

  foreach ($category_array AS $key=>$val)

  {

  if ($key == $category_id)

  {

  foreach ($val AS $k=> $v)

  {

  $options[$k] =

  array(

  'id' => $v['categoryID'], 'name' => $v['categoryName'], 'level' => $level, 'ParentID'=>$v['categoryParentID']

  );

  $children = Category_array($k, $level+1);

  if (count($children) > 0)

  {

  $options = $options + $children;

  }

  }

  }

  }

  unset($category_array[$category_id]);

  return $options;

  }

  ?>

  class cate

  {

  function Get_Category($category_id = 0,$level = 0, $default_category = 0)

  {

  echo $category_id;

  $arr = array(

  '0' => array(

  '1' => array('id' => 1, 'parent' => 0, 'name' => '1111'),

  '2' => array('id' => 2, 'parent' => 0, 'name' => '2222'),

  '4' => array('id' => 4, 'parent' => 0, 'name' => '4444')

  ),

  '1' => array(

  '3' => array('id' => 3, 'parent' => 1, 'name' => '333333'),

  '5' => array('id' => 5, 'parent' => 1, 'name' => '555555')

  ),

  '3' => array(

  '6' => array('id' => 6, 'parent' => 3, 'name' => '66666'),

  '7' => array('id' => 7, 'parent' => 3, 'name' => '77777')

  ),

  '4' => array(

  '8' => array('id' => 8, 'parent' => 4, 'name' => '8888'),

  '9' => array('id' => 9, 'parent' => 4, 'name' => '9999')

  )

  );

  if (!isset($arr[$category_id]))

  {

  return "";

  }

  foreach($arr[$category_id] AS $key => $cate)

  {

  if ($cate['id'] == $default_category)

  {

  $txt = "

  if ($level > 0)

  {

  $txt1 = ">" . str_repeat( "-", $level ) . " " . $cate['name'] . "

  \n";

  }else{

  $txt1 = ">" . $cate['name'] . "

  \n";

  }

  $val = $txt.$txt1;

  echo $val;

  self::Get_Category($key, $level + 1, $default_category);

  }

  }

  function getFlush($category_id = 0,$level = 0, $default_category = 0)

  {

  ob_start();

  self::Get_Category($category_id ,$level, $default_category);

  $out = ob_get_contents();

  ob_end_clean();

  return $out;

  }

  }

  $id =$_GET['id'];

  echo "

  "; $c = new cate(); /pic/p>

  ";

  ?>

【我家的貓450字作文】相關(guān)文章:

[精選]我家的貓的作文11-15

我家的貓的作文07-18

我家的貓的作文(經(jīng)典)03-15

[經(jīng)典]我家的貓的作文01-08

我家的貓作文12-05

我家的貓作文02-06

[精華]我家的貓的作文02-22

【合集】我家的貓的作文02-05

我家的貓公主作文03-25

我家的貓的作文(集合)03-15

  • 相關(guān)推薦