我的if语句不允许更改非索引数组值

时间:2012-09-25 07:15:19

标签: php

在下面的脚本中我有一个数组。我的数组存储了网页中的所有链接,标题和描述。但是我想确保如果没有描述,它将使用一个有效的函数使用p标签的前20个字符。唯一的问题是我有拼图并且似乎无法将它们放在一起,所以我希望我的if语句显示如果描述为空则使用函数getWord而不是getMetas()。

function getMetas($link) {
    $str1 = file_get_contents($link);    

    if (strlen($str1)>0) {
        preg_match_all( '/<meta.*?name=("|\')description("|\').*?content=("|\')(.*?)("|\')/i', $str1, $description);
        if (count($description) > 1) {
            return $description[4];   
        }

    }


}

然后我的功能就在这里,但没有必要看到我知道这有效。

function getWord() {
    $html = file_get_contents($link);    
    preg_match('%(<p[^>]*>.*?</p>)%i', $html, $re);
    $res = get_custom_excerpt($re[1]);
}



$outputs = array();

foreach ($links as $thisLink) {
    $output[] = array("link" => $thisLink, "title" => Titles($thisLink), "description" => getMetas($thisLink));

    if ($output['description'] == null) {
        $output['description'] = $res;
    }

    $outputs[] = $output;
}
print_r($output);

0 个答案:

没有答案