zhouhao19861112 2015-02-04 01:26 采纳率: 0%
浏览 1931

php 语法问题 实现两个关联数组的key值得比较

在下原来是做c++的,最近公司需要,做了一个php的web网站程序,用的php+mysql+jQuery+css。
现在我需要实现一个功能就是在一篇文章的最后显示与这片文章标题类似的文章的推荐,并附带链接。

我现在怀疑是不是语法的问题造成的,请帮我看看,谢谢

我的代码如下:

<?php
/*
 * 示例代码:
 * 功能:完成相似关键词的查找
 */
$demo_title = $con ['info_title'];
//echo $demo_title;

$result = mysql_query("SELECT * FROM 表名 where cate_id='12' or cate_id='13'");
$new_array =array();
$count = mysql_num_rows($result);//结果条数
while($row = mysql_fetch_array($result))
{
    if($row['info_status']==0)
    {
    //echo $row['info_title'];
    $temp = $row['info_id'];
    //echo $temp;
    $new_array[$temp]=$row['info_title'];//数组赋值
    //echo $new_array[$temp];
    //echo ('<br/>');
    }
    //$demo_titile = $row['info_title'];
}
$resarray = getSimilars($demo_title, $new_array);
foreach ($resarray as $v)
{//对结果列表进行html输出
    echo('<a href="/index.php?tpl=content&id='.$v['info_id'].'">'.$v['info_title'].'</a>');
    echo("<br />");
}
/*
 * @param $title 被比较的字符串
 * @param $arr_title 待比较的字符串数组,该数组为关联数组
 * */
function getSimilars($title, $arr_title) {
    $num = 0;
    $ret_array = array();
    foreach ($arr_title as $key=>$value)
    {
        //echo $title;echo ' ';echo $key;
        //echo '<br />';
        $percent = similar_text($value, $title);//相似百分比,整数形式
        //echo $percent;echo ('<br/>');
        $temp_array[$key] = $percent;//构建新数组
        //echo $temp_array[$key]; echo '<br />';
    }
    //对$temp_array数组进行排序;
    arsort($temp_array);
    //echo $temp_array[$key]; echo '<br />';
    //根据temp_array的$key值进行查找并创建新数组
    $times =  0;
    foreach($temp_array as $key=>$value)
    {//似乎该循环只走了第一遍,后面就不走了?
        if($times<6)
        {//目前只推荐6条
            //echo $key;echo " ";echo $value;echo '<br />';
            $search = true;
            if($search == true)
            foreach($arr_title as $tempkey => $tempvalue)
            {
                echo $key;echo " ";echo $tempkey;echo '<br />';
                if($key==$arr_title){//似乎这个if判断没有起到任何作用
                    echo "找到目标:";echo $key;echo " ";echo $tempkey;echo '<br />';
                    //echo $tempkey;echo " ";echo $tempvalue;echo '<br />';
                    $temp=$tempvalue;
                    $ret_array[$key]=$temp;//构建新数组
                    echo "插入目标:";echo $ret_array[key];echo " ";echo '<br />';
                    //next($temp_array);//指针下移
                    $times ++;
                    $search = false;

                }
            }
            reset($arr_title);
        }
    }
    foreach(Sret_array as $key => $value)
    {
        //echo $key;echo " ";echo $value; echo "<br />";
    }
    return $ret_array;
}


// $title当前标题,$arrayTitle为需要查找的数组
function getSimilar($title, $arr_title) {
    $arr_len = count ( $arr_title );
    for($i = 0; $i <= ($arr_len - 1); $i ++) {
        // 取得两个字符串相似的字节数
        $arr_similar [$i] = similar_text ( $arr_title [$i], $title );
    }
    arsort ( $arr_similar ); // 按照相似的字节数由高到低排序
    reset ( $arr_similar ); // 将指针移到数组的第一单元
    $index = 0;
    foreach ( $arr_similar as $old_index => $similar ) {
        $new_title_array [$index] = $arr_title [$old_index];
        $index ++;
    }
    return $new_title_array;
}
?>

另外,我的eclipse单步调试不了,总是还没进到我要调试的代码就开始报
XDEBUG_SESSION_STOP_NO_EXEC=ECLIPSE_DBGP&KEY=14229459395503
错误,是不是我配置的问题?请帮我看下

  • 写回答

3条回答 默认 最新

  • zhouhao19861112 2015-02-04 05:17
    关注

    没有人么?求帮助啊!

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题