AJAX统计单词出现次数及其中文意思
时间:2009-01-22
来源:互联网
测试地址:www.xmcase.com/english.php
[php]if($act == 'english'){
function isurl($string, $required =false) {
$isRightFormat = false;
if($string =='' && $required ===false)
{
$isRightFormat = true;
}
$exp_match = '/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/';
$isRightFormat = preg_match($exp_match, $string) ? true : false;
return $isRightFormat;
}
function full_count_words($str) {
$words = str_word_count($str,1);
$result = array();
foreach ($words as $w) {
$lw = strtolower($w);
if (!(isset($result[$lw]))) {
$result[$lw] = 1;
} else {
$result[$lw]++;
}
}
return $result;
}
if(ereg("http://",$page)===false){
$page = "http://".$page;
}
if(!isurl($page,true)){
echo "err";
exit;
}
$test = file_get_contents($page);
$test = strip_tags($test);
$test = str_replace(array("-","'"),array("",""),$test);
//$test = 'how are you ';
$wordcount = full_count_words($test);
//print_r($wordcount);
$c = count($wordcount);
array_multisort($wordcount,SORT_DESC);
if($c>21){
$wordcounts = array_slice($wordcount,0,21);
}
$i=0;
foreach($wordcount as $key=>$v){
if($i<21) $intr = '<img src="images/loading.gif">';
else $intr = iconv("gbk","UTF-8",'点击单词获取解释');
$str.=' <div class="toolc">
<div class="tool">
<div class="toolsubject"> <a href="javascript:getdetail(\''.$key.'\')">'.$key.'</a>['.$v.']<br />
<img src="images/toolline.jpg" style="padding-top:3px;" /></div>
<div class="tooldesc" id="'.$key.'"><div style="ling-height:104px; text-align:center;">'.$intr.'</div></div>
</div>
</div>';
$i++;
if($i % 3 ==0){
$str.="<div style='clear:both'></div>";
}
}
if(!$wordcounts) $wordcounts = $wordcount;
foreach($wordcounts as $key=>$v){
$str1.='getdetail(\''.$key.'\');#';
}
echo $str."@".$str1;
exit;
}elseif($act == 'getword'){
function get_sub_content($str, $start, $end){
if ($start == '' || $end == ''){
return;
}
$str = explode($start, $str);
$str = explode($end, $str[1]);
return $strs;
}
$str = file_get_contents("http://www.iciba.com/".$w."/");
//$str1 = get_sub_content($str,"<dt>词性及解释</dt>","更多解释");
//echo $str1;
//exit;
preg_match_all("/class=\"dot\" \/>(.*)<\/dd>/U", $str, $matches1);
if(is_array($matches1[1])){
foreach($matches1[1] as $k=>$v){
$strs.="<li title='".implode("\n",$matches1[1])."'>{$v}</li>";
}
}
unset($str);
unset($matches1);
unset($key);
unset($v);
echo $strs;
//unset($strs);
exit;
}[/php]
[php]if($act == 'english'){
function isurl($string, $required =false) {
$isRightFormat = false;
if($string =='' && $required ===false)
{
$isRightFormat = true;
}
$exp_match = '/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/';
$isRightFormat = preg_match($exp_match, $string) ? true : false;
return $isRightFormat;
}
function full_count_words($str) {
$words = str_word_count($str,1);
$result = array();
foreach ($words as $w) {
$lw = strtolower($w);
if (!(isset($result[$lw]))) {
$result[$lw] = 1;
} else {
$result[$lw]++;
}
}
return $result;
}
if(ereg("http://",$page)===false){
$page = "http://".$page;
}
if(!isurl($page,true)){
echo "err";
exit;
}
$test = file_get_contents($page);
$test = strip_tags($test);
$test = str_replace(array("-","'"),array("",""),$test);
//$test = 'how are you ';
$wordcount = full_count_words($test);
//print_r($wordcount);
$c = count($wordcount);
array_multisort($wordcount,SORT_DESC);
if($c>21){
$wordcounts = array_slice($wordcount,0,21);
}
$i=0;
foreach($wordcount as $key=>$v){
if($i<21) $intr = '<img src="images/loading.gif">';
else $intr = iconv("gbk","UTF-8",'点击单词获取解释');
$str.=' <div class="toolc">
<div class="tool">
<div class="toolsubject"> <a href="javascript:getdetail(\''.$key.'\')">'.$key.'</a>['.$v.']<br />
<img src="images/toolline.jpg" style="padding-top:3px;" /></div>
<div class="tooldesc" id="'.$key.'"><div style="ling-height:104px; text-align:center;">'.$intr.'</div></div>
</div>
</div>';
$i++;
if($i % 3 ==0){
$str.="<div style='clear:both'></div>";
}
}
if(!$wordcounts) $wordcounts = $wordcount;
foreach($wordcounts as $key=>$v){
$str1.='getdetail(\''.$key.'\');#';
}
echo $str."@".$str1;
exit;
}elseif($act == 'getword'){
function get_sub_content($str, $start, $end){
if ($start == '' || $end == ''){
return;
}
$str = explode($start, $str);
$str = explode($end, $str[1]);
return $strs;
}
$str = file_get_contents("http://www.iciba.com/".$w."/");
//$str1 = get_sub_content($str,"<dt>词性及解释</dt>","更多解释");
//echo $str1;
//exit;
preg_match_all("/class=\"dot\" \/>(.*)<\/dd>/U", $str, $matches1);
if(is_array($matches1[1])){
foreach($matches1[1] as $k=>$v){
$strs.="<li title='".implode("\n",$matches1[1])."'>{$v}</li>";
}
}
unset($str);
unset($matches1);
unset($key);
unset($v);
echo $strs;
//unset($strs);
exit;
}[/php]
作者: ytsm0112 发布时间: 2009-01-22
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28