要写一功能函数,二个参数,$content 为文字内容,$str为关键词,关键词可为数组(格式是 关键词1,关键词2)
find_zh($content,$str)

  return...
}
要求:传入二个参数,$content 为文字内容,$str为关键词,
      1如果$str不是数组(只有一个关键字),就只要判断$content 是否含有$str,如含有,就输出$str前三个字与$str与$str后三个字这样一句话
      2如果$str是数组,那就要判断文中连续的23个字中要同时含有$str数组中的所有关键词,输出$str数组中第一个词到最后一个词在文中的那一段
用php代码怎么实现呀,多谢可用下面一段文字测试:
中国社会科学院科研局副局长黄群慧昨日表示,如果将整个工业化进程按照工业化初期、中期和后期三个阶段划分,并将每个时期划分为前半阶段和后半阶段,我国整体上已进入工业化中期的后半阶段

解决方案 »

  1.   

    第二点是什么意思 能说明白点吗?
    文中连续的23个字中要同时含有$str数组中的所有关键词输出$str数组中第一个词到最后一个词在文中的那一段 
      

  2.   

    补:2 如果$str是数组,那就要判断$content文中连续的23个字中要同时含有$str数组中的所有关键词,
       输出$str数组中第一个词到最后一个词
      

  3.   

    $content文中连续的23个字 随意23个字?
    $str数组中的所有关键词
    $test = array("中国社会科学院科研局副局长黄群慧昨日表示","如果将整个工业化进程按照工业化初期、中期和后期三个阶段划分","并将每个时期划分为前半阶段和后半阶段,我国整体上已进入工业化中期的后半阶段");
    那是不是 要在$content 中找 “中国社会科学院科研局副局长黄群慧昨日表示,如果将整个工业化进程按照工业化初期、中期和后期三个阶段划分,并将每个时期划分为前半阶段和后半阶段,我国整体上已进入工业化中期的后半阶段"
      

  4.   

    楼上的,
    $str一般只是 2-4个字,如 中国, 昨日
    意思就是说 中国 昨日 二个词 在$content中 出现时,要出现在$content的23个字内,不能“中国”出现在开头,”昨日“ 出现在最后,
      

  5.   


    <?php 
    $content ="中国社会科学院科研局副局长黄群慧昨日表示,如果将整个工业化进程按照工业化初期、中期和后期三个阶段划分,并将每个时期划分为前半阶段和后半阶段,我国整体上已进入工业化中期的后半阶段";
    $arr = array("中国","社会","科学");
    function find_zh($content,$arr) 

      if(is_array($arr)){
    $str=join($arr,'');
    if(strpos($content,$str)>=0){
    echo $str;
    }
      }else{
    if(strstr($content,$str)){
    echo substr($str,0,6) . substr($str,-6,6);
    }
      }

    find_zh($content,$arr);
    ?>不知道是不是楼主想要的...
    我php新手
      

  6.   

    多谢 5楼,还有点问题
    如 $arr = array("中国","社会","表示");
    应该输出 中国社会科学院科研局副局长黄群慧昨日表示
    可楼上的代码输出不了,,
      

  7.   

    不是把数组的所有内容都连接起来 然后如果在$content中有找到就输出数组的全部内容吗?
    如 $arr = array("中国","社会","表示"); 
    是要 "中国社会"  ,"表示"  这样?
      

  8.   

    7楼的
    $content ="中国社会科学院科研局副局长黄群慧昨日表示,如果将整个工业化进程按照工业化初期、中期和后期三个阶段划分,并将每个时期划分为前半阶段和后半阶段,我国整体上已进入工业化中期的后半阶段";
    $arr = array("中国","社会","表示");
    先要判断 $arr 中的三个词在$content中有没有,显示是有的,
    那么就要输出 中国社会科学院科研局副局长黄群慧昨日表示