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

洪恩在線成語詞典小偷程序php版

 更新時(shí)間:2012年04月20日 17:20:51   作者:  
去年在學(xué)習(xí)用php做小偷程序時(shí)的一個(gè)練習(xí)之作,希望能給有同樣需求的朋友帶來些幫助,程序主要流程是獲取洪恩在線的成語詞典查詢結(jié)果并在當(dāng)前頁面顯示出來(俗稱小偷程序),使用語言為php
主要函數(shù)是file_get_contents,主程序分兩段,跟我一起看過來吧(凡人博客原創(chuàng)代碼,轉(zhuǎn)載請(qǐng)注明)。
復(fù)制代碼 代碼如下:

function escape($str){
preg_match_all('/[\x80-\xff].|[\x01-\x7f]+/',$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v){
if(ord($v[0]) < 128)
$ar[$k] = rawurlencode($v);
else
$ar[$k] = '%u'.bin2hex(iconv('GB2312','UCS-2',$v));
}
return join('',$ar);
}

上面的函數(shù)主要是用php實(shí)現(xiàn)JavaScript的escape編碼過程,因?yàn)楹槎鞯牟樵兘涌谛枰獋鬟f過去的值是經(jīng)過escape編碼后的成語條目。
復(fù)制代碼 代碼如下:

function chacy($chengyu){
$chengyu=escape($chengyu);
$text=@file_get_contents('http://study.hongen.com/dict/ndsearchchengyu.aspx?type=exact&word='.$chengyu);
$pos1=strpos($text,'<table class="root">');
$pos2=strrpos($text,'<table class="english">');
$text=substr($text,$pos1,$pos2-$pos1);
//把字符集由原來的UTF-8轉(zhuǎn)換到GB2312,注意在GB2312之后加上了//IGNORE,強(qiáng)制遇到特殊字符也繼續(xù)轉(zhuǎn)換,因?yàn)樵谟龅綕h字“一”的時(shí)候iconv函數(shù)會(huì)終止轉(zhuǎn)換
$text=iconv('UTF-8','GB2312//IGNORE',$text);
if (strpos($text,'出處')){
return $text;
}
}

上面是自己定義的成語查詢函數(shù),首先escape編碼要查詢的成語條目,然后使用file_get_contents函數(shù)獲取“http://study.hongen.com/dict/ndsearchchengyu.aspx?type=exact&word=”頁面查詢的內(nèi)容,使用substr去除前后一些不需要的多余代碼,中間就是成語條目的解釋部分(包括拼音、解釋、出處、例句),最后記得要轉(zhuǎn)碼,洪恩返回的結(jié)果是UTF-8編碼,一般情況下我們需要轉(zhuǎn)換為GB2312編碼,上面我寫了一個(gè)有關(guān)iconv函數(shù)轉(zhuǎn)換編碼有時(shí)會(huì)出現(xiàn)bug的注釋文本,需要加上一個(gè)//IGNORE參數(shù)。最后判斷結(jié)果中是否存在“出處”二字,有的話說明整個(gè)函數(shù)運(yùn)行成功,可以把獲取到的內(nèi)容return給頁面了。

程序主體實(shí)現(xiàn)完成,只需在相應(yīng)位置調(diào)用查詢函數(shù):chacy 就可以了。

相關(guān)文章

  • Search File Contents PHP 搜索目錄文本內(nèi)容的代碼

    Search File Contents PHP 搜索目錄文本內(nèi)容的代碼

    這個(gè)類可以用來搜索在給定的文本目錄中的文件。它可以給定目錄遍歷遞歸查找某些文件擴(kuò)展名的文件。
    2010-02-02
  • PHP導(dǎo)出MySQL數(shù)據(jù)到Excel文件(fputcsv)

    PHP導(dǎo)出MySQL數(shù)據(jù)到Excel文件(fputcsv)

    經(jīng)常會(huì)碰到需要從數(shù)據(jù)庫中導(dǎo)出數(shù)據(jù)到Excel文件,用一些開源的類庫,比如PHPExcel,確實(shí)比較容易實(shí)現(xiàn),但對(duì)大量數(shù)據(jù)的支持很不好,很容易到達(dá)PHP內(nèi)存使用上限。
    2011-07-07
  • PHP封裝PDO實(shí)現(xiàn)操作MySql數(shù)據(jù)庫

    PHP封裝PDO實(shí)現(xiàn)操作MySql數(shù)據(jù)庫

    數(shù)據(jù)庫操作類可以封裝數(shù)據(jù)庫連接和操作,使代碼更易于維護(hù)和擴(kuò)展,這篇文章主要為大家詳細(xì)介紹了PHP如何封裝操作類PDO從而實(shí)現(xiàn)操作MySql數(shù)據(jù)庫的功能,需要的可以了解下
    2023-10-10
  • 解析php中如何調(diào)用用戶自定義函數(shù)

    解析php中如何調(diào)用用戶自定義函數(shù)

    以下是對(duì)php中調(diào)用用戶自定義函數(shù)的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-08-08
  • php遍歷所有文件及文件夾的方法深入解析

    php遍歷所有文件及文件夾的方法深入解析

    本篇文章是對(duì)php遍歷所有文件及文件夾的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php cookies中刪除的一般賦值方法

    php cookies中刪除的一般賦值方法

    php cookies中刪除的一般賦值方法 cookie 常用于識(shí)別用戶。cookie 是服務(wù)器留在用戶計(jì)算機(jī)中的小文件。
    2011-05-05
  • 利用PHP實(shí)現(xiàn)開心消消樂的算法示例

    利用PHP實(shí)現(xiàn)開心消消樂的算法示例

    開心消消樂應(yīng)該對(duì)大家來說都不陌生吧,下面這篇文章主要給大家介紹了關(guān)于如何利用PHP實(shí)現(xiàn)開心消消樂算法的相關(guān)資料,文中將需求和示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • PHP動(dòng)態(tài)編譯出現(xiàn)Cannot find autoconf的解決方法

    PHP動(dòng)態(tài)編譯出現(xiàn)Cannot find autoconf的解決方法

    這篇文章主要介紹了PHP動(dòng)態(tài)編譯出現(xiàn)Cannot find autoconf的解決方法,是PHP程序設(shè)計(jì)中經(jīng)常會(huì)遇到的問題,需要的朋友可以參考下
    2014-11-11
  • php使用function_exists判斷函數(shù)可用的方法

    php使用function_exists判斷函數(shù)可用的方法

    這篇文章主要介紹了php使用function_exists判斷函數(shù)可用的方法,通過一個(gè)圖像處理函數(shù)中使用function_exists函數(shù)判斷并輸出來實(shí)現(xiàn)函數(shù)存在判斷與流程靈活控制的功能,具有很好的借鑒價(jià)值,需要的朋友可以參考下
    2014-11-11
  • PHP curl 抓取AJAX異步內(nèi)容示例

    PHP curl 抓取AJAX異步內(nèi)容示例

    抓ajax異步內(nèi)容的頁面和抓普通的頁面區(qū)別不大。ajax只不過是做了一次異步的http請(qǐng)求,下面的示例,大家可以參考下
    2014-09-09

最新評(píng)論

闽清县| 荔波县| 济宁市| 莱西市| 古丈县| 汉沽区| 彰化县| 双江| 邯郸县| 昂仁县| 宜阳县| 三门峡市| 德安县| 双鸭山市| 行唐县| 泰和县| 沽源县| 修水县| 宿迁市| 祁连县| 平凉市| 新巴尔虎左旗| 库车县| 华阴市| 巨鹿县| 启东市| 大新县| 即墨市| 门头沟区| 辽源市| 自贡市| 离岛区| 延边| 宣城市| 高邮市| 许昌市| 连云港市| 洛南县| 个旧市| 习水县| 慈溪市|