当前位置: 首页 > 面试题库 >

PHP-以字符串形式添加指向URL的链接

易博文
2023-03-14
问题内容

我有一个函数,可以<a href>在链接之前和</a>之后添加标签。但是,某些网页会中断。您将如何改善此功能?谢谢!

function processString($s) 
{
    // check if there is a link

    if(preg_match("/http:\/\//",$s))
    {
        print preg_match("/http:\/\//",$s);


        $startUrl =  stripos($s,"http://");

        // if the link is in between text
        if(stripos($s," ",$startUrl)){
            $endUrl = stripos($s," ",$startUrl);
        }
        // if link is at the end of string
        else {$endUrl = strlen($s);}

        $beforeUrl = substr($s,0,$startUrl);
        $url = substr($s,$startUrl,$endUrl-$startUrl);
        $afterUrl = substr($s,$endUrl);

        $newString = $beforeUrl."<a href=\"$url\">".$url."</a>".$afterUrl;

        return $newString;
    }

    return $s;
}

问题答案:
function processString($s) {
    return preg_replace('/https?:\/\/[\w\-\.!~#?&=+\*\'"(),\/]+/','<a href="$0">$0</a>',$s);
}


 类似资料:
  • 假设我在一个数组列表中添加了2个用户Apple和Orange。然后我想将牛顿添加到苹果的朋友列表中。所以苹果应该有1个朋友,而橙色仍然没有任何朋友,因为我还没有添加他们。 我的问题是,当我把牛顿添加到苹果的朋友中时,牛顿也会出现在orange的朋友中。我只需要一个朋友出现在苹果和橙色没有。 我认为这是我为用户的朋友设置arraylist的方式,但我不确定如何更改它。

  • 主要内容:到底使用字符数组还是字符串常量C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,这在《 C语言字符数组和字符串》中已经进行了详细讲解,这里不妨再来演示一下: 运行结果: https://www.xnip.cn https://www.xnip.cn 字符数组归根结底还是一个数组,上节讲到的关于 指针和数组的规则同样也适用于字符数组。更改上面的代码,使用指针的方式来输出字符串: 运行结果: https://ww

  • 问题内容: 我有以下字符串: 我需要将其转换为: “查看http://www.google.com ” 原始字符串可以包含多个URL字符串。 如何在php中做到这一点? 谢谢 问题答案: 您可以使用以下内容: PHP版本 <5.3(ereg_replace),否则(preg_replace)

  • 主要内容:读字符串函数 fgets,写字符串函数 fputsfgetc() 和 fputc() 函数每次只能读写一个字符,速度较慢;实际开发中往往是每次读写一个字符串或者一个数据块,这样能明显提高效率。 读字符串函数 fgets fgets() 函数用来从指定的文件中读取一个字符串,并保存到字符数组中,它的用法为: str 为字符数组,n 为要读取的字符数目,fp 为文件 指针。 返回值:读取成功时返回字符数组首地址,也即 str;读取失败时返回 NULL

  • 问题内容: 我在MySQL数据库中有一个表字段: 因此,我使用以下查询将其调用到我的页面: 然后,为了处理结果,我要做: 现在,如果我这样做: 我得到一个字符串。 这不是整数吗? 问题答案: 当您使用PHP从MySQL数据库中选择数据时,数据类型将始终转换为字符串。您可以使用以下代码将其转换回整数: 或使用功能: