PHP中對文本文件操作很好的類

?
?
class ?CtbClass ?{ ?
?
?? ?? ?? ??var ?$file; ? ? ? ? ?
?? ?? ?? ??var ?$index; ? ? ?
?
? ? ? ?//建立一個文件並寫入輸入 ?
?? ?? ?? ??function ?null_write($new) ?
?? ?? ?? ??{ ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"w"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$new); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ? ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?添加數據記錄到文件末端 ?
?? ?? ?? ??function ?add_write($new) ?{ ? ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"a"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$new); ? ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ? ?
?? ?? ?? ??} ? ?
?? ?? ?? ??// ?配合readfile()的返回一起使用,把一行數據轉換爲一維數組 ?
?? ?? ?? ??function ?make_array($line) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$array ?= ?explode("/x0E",$line); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$array; ?
?? ?? ?? ??} ?
?? ?? ?? ?? ?
?? ?? ?? ??//把爲一維數組轉換一行數據 ?
?? ?? ?? ??function ?join_array($line) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$array ?= ?join("/x0E",$line); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$array; ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?返回數據文件的總行數 ?
?? ?? ?? ??function ?getlines() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$f=file($this->file); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??return ?count($f); ? ? ? ? ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?返回下一行的數據記錄(備用) ?
?? ?? ?? ??function ?next_line() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$this->index=$this->index++; ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??return ?$this->get(); ? ? ? ? ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?返回上一行的數據記錄(備用) ?
?? ?? ?? ??function ?prev_line() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$this->index=$this->index--; ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??return ?$this->get(); ? ? ? ? ?
?? ?? ?? ??} ? ? ?
?? ?? ?? ??// ?返回當前行的數據記錄數據較小 ?
?? ?? ?? ??function ?get() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"r"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??for($i=0;$i<=$this->index;$i++) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$rec=fgets($f,1024); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??$line=explode("/x0E",$rec); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$line; ? ? ? ? ?
?? ?? ?? ??} ? ? ?
?? ?? ?? ??// ?返回當前行的數據記錄數據較大 ?
?? ?? ?? ??function ?get_big_file() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"r"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??for($i=0;$i<=$this->index;$i++) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$rec=fgets($f,1024*5); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??$line=explode("/x0E",$rec); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$line; ? ? ? ? ?
?? ?? ?? ??} ? ? ?
?? ?? ?? ??// ?打開數據文件---以一維數組返回文件內容 ?
?? ?? ?? ??function ?read_file() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??if ?(file_exists($this->file)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line ?=file($this->file); ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??return ?$line; ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?打開數據文件---以二維數組返回文件內容 ?
?? ?? ?? ??function ?openFile() ?{ ?
?? ?? ?? ?? ?? ?? ?? ??if ?(file_exists($this->file)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$f ?=file($this->file); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$lines ?= ?array(); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??foreach ?($f ?as ?$rawline) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$tmpline ?= ?explode("/x0E",$rawline); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??array_push($lines, ?$tmpline); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??return ?$lines; ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?傳入一個數組,合併成一行數據,重寫整個文件 ?
?? ?? ?? ??function ?overwrite($array){ ?
?? ?? ?? ?? ?? ?? ?? ??$newline ?= ?implode("/x0E",$array); ?? ?? ?? ?? ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newline); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ?
? ? ?
?? ?? ?? ??// ?添加一行數據記錄到文件末端 ?
?? ?? ?? ??function ?add_line($array,$check_n=1) ?{ ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$s=implode("/x0E",$array); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"a"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$s); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??if ?($check_n==1) ?fputs($f,"/n"); ? ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ? ?
?? ?? ?? ??} ? ? ? ? ?
?
?? ?? ?? ??// ?插入一行數據記錄到文件最前面 ?
?? ?? ?? ??function ?insert_line($array) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?implode("/x0E",$array); ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"r"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??while ?($line ?= ?fgets($f,1024)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?.= ?$line; ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newfile); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?更新所有符合條件的數據記錄,適用於每行字節數據較大的情況 ?
?? ?? ?? ??function ?update($column,$query_string,$update_array) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$update_string ?= ?implode("/x0E",$update_array); ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?""; ?? ?? ?? ?? ?
?? ?? ?? ?? ?? ?? ?? ??$fc=file($this->file); ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"r"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??for ?($i=0;$i?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$list ?= ?explode("/x0E",$fc[$i]); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($list[$column] ?!= ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?$newfile.chop($fc[$i])."/n"; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?$newfile.$update_string; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newfile); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?更新所有符合條件的數據記錄,適用於每行字節數據較小的情況 ?
?? ?? ?? ??function ?update2($column,$query_string,$update_array) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$newline ?= ?implode("/x0E",$update_array); ? ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?""; ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"r"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??while ?($line ?= ?fgets($f,1024)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$tmpLine ?= ?explode("/x0E",$line); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($tmpLine[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?.= ?$newline; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?.= ?$line; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newfile); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?刪除所有符合條件的數據記錄,適用於每行字節數據較大的情況 ?
?? ?? ?? ??function ?delete($column,$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?""; ?? ?? ?? ?? ?
?? ?? ?? ?? ?? ?? ?? ??$fc=file($this->file); ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"r"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??for ?($i=0;$i?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$list ?= ?explode("/x0E",$fc[$i]); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($list[$column] ?!= ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?$newfile.chop($fc[$i])."/n"; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??$f=fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newfile); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ? ? ? ? ?
?
?? ?? ?? ??// ?刪除所有符合條件的數據記錄,適用於每行字節數據較小的情況 ?
?? ?? ?? ??function ?delete2($column,$query_string){ ? ? ?
?? ?? ?? ?? ?? ?? ?? ??$newfile ?= ?""; ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"r"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_SH); ?
?? ?? ?? ?? ?? ?? ?? ??while ?($line ?= ?fgets($f,1024)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$tmpLine ?= ?explode("/x0E",$line); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($tmpLine[$column] ?!= ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$newfile ?.= ?$line; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ?? ?? ?? ?? ??$f ?= ?fopen($this->file,"w"); ?
?? ?? ?? ?? ?? ?? ?? ??flock($f,LOCK_EX); ?
?? ?? ?? ?? ?? ?? ?? ??fputs($f,$newfile); ?
?? ?? ?? ?? ?? ?? ?? ??fclose($f); ?
?? ?? ?? ??} ?
?
? ? ? ?//取得一個文件裏某個字段的最大值 ?
?? ?? ?? ??function ?get_max_value($column) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$tlines ?= ?file($this->file); ?
?? ?? ?? ?? ?? ?? ?? ??for ?($i=0;$i<=count($tlines);$i++) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line=explode("/x0E",$tlines[$i]); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$get_value[]=$line[$column]; ?
?? ?? ?? ?? ?? ?? ?? ??} ?
? ? ? ? ? ? ? ?$get_max_value ?= ?max($get_value); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$get_max_value; ?
?? ?? ?? ??} ?
?
?
?? ?? ?? ??// ?根據數據文件的某個字段是否包含$query_string進行查詢,以二維數組返回所有符合條件的數據 ?
?? ?? ?? ??function ?select($column, ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$tline ?= ?$this->openfile(); ?
?? ?? ?? ?? ?? ?? ?? ??$lines ?= ?array(); ?
?? ?? ?? ?? ?? ?? ?? ??foreach ?($tline ?as ?$line) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??array_push($lines, ?$line); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?
?? ?? ?? ?? ?? ?? ?? ??return ?$lines; ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?功能與function ?select()一樣,速度可能略有提升 ?
?? ?? ?? ??function ?select2($column, ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??if ?(file_exists($this->file)) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$tline ?= ?$this->read_file(); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??foreach ?($tline ?as ?$tmpLine) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line ?= ?$this->make_array($tmpLine); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$lines[]=$tmpLine; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?
?? ?? ?? ?? ?? ?? ?? ??return ?$lines; ?
?? ?? ?? ??} ?
?
?? ?? ?? ??// ?根據數據文件的某個字段是否包含$query_string進行查詢,以一維數組返回第一個符合條件的數據 ?
?? ?? ?? ??function ?select_line($column, ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$tline ?= ?$this->read_file(); ?
?? ?? ?? ?? ?? ?? ?? ??foreach ?($tline ?as ?$tmpLine) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line ?= ?$this->make_array($tmpLine); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ? ? ? ? ? ? ? ?return ?$line; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??break; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ??} ?
?? ?? ?? ??// ?select ?next/prev ?line(next_prev ?==> ?1/next, ?2/prev) ?by ?cx ?
?? ?? ?? ??function ?select_next_prev_line($column, ?$query_string, ?$next_prev) ?{ ?
?? ?? ?? ?? ?? ?? ?? ??$tline ?= ?$this->read_file(); ?
?? ?? ?? ?? ?? ?? ?? ??$line_key_end ?= ?count($tline) ?- ?1; ?
?? ?? ?? ?? ?? ?? ?? ??$line_key ?= ?-1; ?
?? ?? ?? ?? ?? ?? ?? ??foreach ?($tline ?as ?$tmpLine) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line_key++; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line ?= ?$this->make_array($tmpLine); ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($next_prev ?== ?1) ?{ ? ?// ?next? ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line_key ?== ?0) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??return ?0; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line_key_up ?= ?$line_key ?- ?1; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??return ?$up_line; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$up_line ?= ?$line; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?elseif ?($next_prev ?== ?2) ?{ ? ?// ?prev? ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line[$column] ?== ?$query_string) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if ?($line_key ?== ?$line_key_end) ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??return ?0; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??$line_key_down ?= ?$line_key ?+ ?1; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??break; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?else ?{ ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??return ?0; ?
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??} ?
?? ?? ?? ?? ?? ?? ?? ??$down_line ?= ?$this->make_array($tline[$line_key_down]); ?
?? ?? ?? ?? ?? ?? ?? ??return ?$down_line; ?
?? ?? ?? ??} ?
?
?
?
}??
發佈了5 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章