>  Q&A  >  본문

php - 类似新浪的@匹配用户是怎么做的啊

如题.... 前端做法没什么压力,就是后端怎么对匹配用户进行匹配加url啊~~

PHPzPHPz2768일 전693

모든 응답(4)나는 대답할 것이다

  • 数据分析师

    数据分析师2017-10-01 01:21:04

    php - Sina와 @ 유사한 사용자 매칭 방법 - PHP 중국어 웹사이트 Q&A - php - Sina와 @ 유사한 사용자 매칭 방법 - PHP 중국어 웹사이트 Q&A

    둘러보고 배워보세요.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-10 13:12:31

    微博的做法其实是这样的,id,uid,昵称都是唯一的。
    http://weiboc.om/{id}
    http://weibo.com/u/{uid}
    http://weibo.com/n/{screen_name}

    三个字段都建立唯一索引。@后也没必要处理URL,展现时前台用JS匹配昵称,点击链接后通过路由决定查找的字段,然后跳转到对应主页。

    회신하다
    0
  • 迷茫

    迷茫2017-04-10 13:12:31

    @的文字是用户名,而链接是id,所以需要一个用户名到id的查询,是缓存,nosql还是普通的db看你的业务。
    然后php可以写一个preg_replace_callback
    举例:

    $text = preg_replace_callback('/@(\w+)/u', uname, $text);
    
    function uname($matches) {
        $uname = $matches [1];
        $uid = get_uid_by_uname($uname);
        return "<a href=\"/u/{$uid}\">{$uname}</a>";
    }

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-10 13:12:31

    自动完成

    회신하다
    0
  • 취소회신하다