在我的脚本

时间:2016-12-31 20:39:16

标签: php

我有一个运行的hashtag脚本,它创建了一个指向我社交网络上另一个页面的链接。现在我设置它,以便U =登录用户名,TAG =正在使用的#标签。由于某种原因,当用户登录或注销时,变量$ logged username不会给出结果。它只是空白。下面是我正在运行的#标签脚本

<?php
///hashatg script
function convertHashtag($str){
    $regex = "/#+([a-zA-Z0-9_]+)/";
    $str = preg_replace($regex, '<a href="/hashtag.php?u='.$log_username.'&tag=#$1" title="all posts that include  #$1">$0</a>', $str);
    return($str);
}
$string = $statuslist;
$string = convertHashtag($string);
?>

下面是生成的链接,你应该=记录用户名,如:betty,frank,peter等。

http://website.com/hashtag.php?u=&tag=#myhashtag

应该阅读

http://website.com/hashtag.php?u=betty&tag=#myhashtag

1 个答案:

答案 0 :(得分:2)

试试这个:

<?php
///hashatg script
function convertHashtag($str){
    global $log_username;
    $regex = "/#+([a-zA-Z0-9_]+)/";
    $str = preg_replace($regex, '<a href="/hashtag.php?u='.$log_username.'&tag=#$1" title="all posts that include  #$1">$0</a>', $str);
    return($str);
}
$string = $statuslist;
$string = convertHashtag($string);
?>

或以下内容,具体取决于您希望如何定义参数

<?php
///hashatg script
function convertHashtag($str, $log_username){
    $regex = "/#+([a-zA-Z0-9_]+)/";
    $str = preg_replace($regex, '<a href="/hashtag.php?u='.$log_username.'&tag=#$1" title="all posts that include  #$1">$0</a>', $str);
    return($str);
}
$string = $statuslist;
$string = convertHashtag($string, $log_username);
?>

您需要在函数内部或通过函数定义参数。