最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php中長(zhǎng)文章分頁(yè)顯示實(shí)現(xiàn)代碼

 更新時(shí)間:2012年09月29日 22:46:05   作者:  
php中長(zhǎng)文章分頁(yè)顯示實(shí)現(xiàn)代碼,需要的朋友可以參考下
歡迎交流!實(shí)現(xiàn)代碼如下:
復(fù)制代碼 代碼如下:

<?php include('include/config.php'); ?>
<?php
/**
*Author:烏鳥(niǎo)heart
*實(shí)現(xiàn)長(zhǎng)文章分頁(yè)的代碼
*原理:
*利用一個(gè)數(shù)組來(lái)記錄文章每一頁(yè)(用p0、p1、p2...做手動(dòng)標(biāo)記)的起始字節(jié)數(shù),然后通過(guò)利用php函數(shù)操作這個(gè)數(shù)組去顯示分頁(yè)后的文章。分頁(yè)顯示,傳遞ptag(與tag的值一樣)值。
*利用到的php函數(shù):
*1、strlen("字符串") - Returns the length of the given string. - 返回字符串的字節(jié)總數(shù)。
*2、strpos("字符串","匹配字符") - Returns the numeric position of the first occurrence of needle in the haystack string. - 返回字符串中出現(xiàn)的第一個(gè)相匹配的字符所在的字節(jié)序數(shù)。
*3、substr("字符串","起始位置","終止位置") - substr() returns the portion of string specified by the start and length parameters. - 返回字符串中指定起止位置的若干字符。
*/
$sql = "select * from article where id = 41";//定義sql語(yǔ)句,返回id為41的內(nèi)容
$result = mysql_query($sql);//執(zhí)行sql語(yǔ)句,返回結(jié)果集
$row = mysql_fetch_array($result);//以數(shù)組的形式從記錄集返回
$content = $row['content'];//把文章賦給變量$content
$articleCounts = strlen($content);//返回$content(文章)的總字節(jié)數(shù)
$isTrue = true;//循環(huán)標(biāo)記
$tag = 0;//分頁(yè)標(biāo)記、數(shù)組下標(biāo)
echo "字節(jié)總數(shù):".$articleCounts."<br>";//測(cè)試信息
//尋找標(biāo)記“ptag”,并把其位置(所在的字節(jié)數(shù))賦給數(shù)組array[]------------------------------------------
while($isTrue){
$startAt = strpos($content,"p".$tag);//得到相應(yīng)ptag的字節(jié)序數(shù)
if($startAt != false){ //如果有標(biāo)記(返回值不是false),則記錄位置
$array[$tag++] = $startAt;
}else{ //如果沒(méi)有標(biāo)記,則將數(shù)組array[0]賦值'\0'
$array[$tag] = '\0';
$isTrue = false;
}
}
//循環(huán)輸出標(biāo)記位置-------------------------------------------------------------測(cè)試信息
for($i = 0; $i < $tag; $i++){
echo $array[$i]."<br>";
}
echo "------------------------------ <br>";
//輸出內(nèi)容---------------------------------------------------------------------
if($array[0] == '\0'){ //判斷是否有標(biāo)記
echo $content; //沒(méi)有標(biāo)記的情況,單頁(yè)顯示
}else{ //有標(biāo)記的情況,分頁(yè)顯示
//輸出分頁(yè)內(nèi)容
if( isset($_GET['ptag']) ){ //判斷是否有ptag值傳遞,有則顯示第 ptag+1 頁(yè),否則顯示第一頁(yè)(ptag=0)
$ptag = $_GET['ptag']; //把ptag的值賦給變量$ptag
if($ptag < $tag){ //判斷參數(shù)是否有誤
echo "有值傳遞,顯示第".($ptag+1)."頁(yè)<br>"; //測(cè)試信息
echo "值為:".$ptag."<br>"; //測(cè)試信息
echo substr($content,$array[$ptag - 1] + 2,$array[$ptag] - $array[$ptag - 1] - 2);//顯示ptag+1頁(yè)的內(nèi)容
}else{echo "參數(shù)有誤";}
}
else{ //沒(méi)有ptag值傳遞的情況,顯示第一頁(yè)(ptag=0)
echo "無(wú)值傳遞,顯示第1頁(yè)<br>"; //測(cè)試信息
echo substr($content,0,$array[0] - 1);//顯示第一頁(yè)的內(nèi)容
}
}
//循環(huán)顯示頁(yè)數(shù)鏈接-------------------------------------------------------------
if($array[0] != '\0'){ //在有手動(dòng)標(biāo)記的情況下才顯示頁(yè)數(shù)鏈接
for($i = 0;$i < $tag;$i++){
if($ptag == $i){ //如果是本頁(yè),則粗體顯示
$pager .= " <a href='test.php?ptag=$i'><b>".($i+1)."</b></a> ";
}else{ //不是本頁(yè)
$pager .= " <a href='test.php?ptag=$i'>".($i+1)."</a> ";
}
}
echo "<br>跳轉(zhuǎn)至第".$pager."頁(yè)"; //輸出鏈接
}
?>

相關(guān)文章

  • php cache類(lèi)代碼(php數(shù)據(jù)緩存類(lèi))

    php cache類(lèi)代碼(php數(shù)據(jù)緩存類(lèi))

    php的執(zhí)行效率很高,速度很快,但是連接數(shù)據(jù)庫(kù)、查詢(xún)數(shù)據(jù)庫(kù)等還是比較耗時(shí)的。
    2010-04-04
  • php支持?jǐn)帱c(diǎn)續(xù)傳、分塊下載的類(lèi)

    php支持?jǐn)帱c(diǎn)續(xù)傳、分塊下載的類(lèi)

    這篇文章主要介紹了php支持?jǐn)帱c(diǎn)續(xù)傳、分塊下載的類(lèi)的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • PHP備份/還原MySQL數(shù)據(jù)庫(kù)的代碼

    PHP備份/還原MySQL數(shù)據(jù)庫(kù)的代碼

    之前是采用PHP讀取數(shù)據(jù)庫(kù)結(jié)構(gòu)和內(nèi)容,然后寫(xiě)文件,這樣可能會(huì)導(dǎo)致導(dǎo)出的文件不一定能百分百導(dǎo)入到MySQL中去,想想之后采用MySQL自帶的導(dǎo)入導(dǎo)出命令最保險(xiǎn)
    2011-01-01
  • 詳解如何利用PHP實(shí)現(xiàn)RPC

    詳解如何利用PHP實(shí)現(xiàn)RPC

    RPC全稱(chēng)為Remote Procedure Call,翻譯過(guò)來(lái)為“遠(yuǎn)程過(guò)程調(diào)用”。主流的平臺(tái)中都支持各種遠(yuǎn)程調(diào)用技術(shù),以滿(mǎn)足分布式系統(tǒng)架構(gòu)中不同的系統(tǒng)之間的遠(yuǎn)程通信和相互調(diào)用。本文將利用PHP實(shí)現(xiàn)RPC,需要的可以參考一下
    2022-04-04
  • PHP程序員最常犯的11個(gè)MySQL錯(cuò)誤小結(jié)

    PHP程序員最常犯的11個(gè)MySQL錯(cuò)誤小結(jié)

    對(duì)于大多數(shù)web應(yīng)用來(lái)說(shuō),數(shù)據(jù)庫(kù)都是一個(gè)十分基礎(chǔ)性的部分。如果你在使用PHP,那么你很可能也在使用MySQL—LAMP系列中舉足輕重的一份子。
    2010-11-11
  • PHP+Mysql日期時(shí)間如何轉(zhuǎn)換(UNIX時(shí)間戳和格式化日期)

    PHP+Mysql日期時(shí)間如何轉(zhuǎn)換(UNIX時(shí)間戳和格式化日期)

    UNIX時(shí)間戳和格式化日期是我們常打交道的兩個(gè)時(shí)間表示形式,Unix時(shí)間戳存儲(chǔ)、處理方便,但是不直觀,格式化日期直觀,但是處理起來(lái)不如Unix時(shí)間戳那么自如,所以有的時(shí)候需要互相轉(zhuǎn)換,下面給出互相轉(zhuǎn)換的幾種轉(zhuǎn)換方式
    2012-07-07
  • JS+PHP實(shí)現(xiàn)用戶(hù)輸入數(shù)字后顯示最大的值及所在位置

    JS+PHP實(shí)現(xiàn)用戶(hù)輸入數(shù)字后顯示最大的值及所在位置

    這篇文章主要給大家介紹了JS+PHP實(shí)現(xiàn)用戶(hù)輸入數(shù)字后顯示最大的值及是第幾個(gè)的相關(guān)位置,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。
    2017-06-06
  • php一句話木馬變形技巧

    php一句話木馬變形技巧

    這篇文章主要介紹了php一句話木馬變形技巧,對(duì)此感興趣的同學(xué),可以參考下
    2021-04-04
  • PHP實(shí)現(xiàn)的最大正向匹配算法示例

    PHP實(shí)現(xiàn)的最大正向匹配算法示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的最大正向匹配算法,簡(jiǎn)單描述了最大正向匹配算法的概念、原理并結(jié)合實(shí)例形式分析了php實(shí)現(xiàn)與使用最大正向匹配算法的相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • PHP防止圖片盜用(盜鏈)的方法小結(jié)

    PHP防止圖片盜用(盜鏈)的方法小結(jié)

    這篇文章主要介紹了PHP防止圖片盜用(盜鏈)的方法,結(jié)合實(shí)例形式分析了php通過(guò)修改Apache服務(wù)器配置及目錄訪問(wèn)權(quán)限等方式實(shí)現(xiàn)圖片防盜鏈的相關(guān)操作技巧,需要的朋友可以參考下
    2016-11-11

最新評(píng)論

峨眉山市| 安福县| 南投县| 绥滨县| 奉贤区| 佛山市| 和田市| 上饶市| 广汉市| 盈江县| 神农架林区| 尼勒克县| 高雄县| 壤塘县| 内黄县| 广南县| 铜陵市| 铜陵市| 平原县| 和政县| 友谊县| 嫩江县| 马尔康县| 定边县| 诸城市| 玉树县| 宜川县| 宁武县| 丹东市| 胶南市| 奉贤区| 河东区| 新巴尔虎左旗| 分宜县| 从化市| 迭部县| 泗洪县| 奇台县| 白山市| 同江市| 富民县|