masterhoo masterhoo - 2 years ago 61
PHP Question

Retrieving all usernames from a tweet in a PHP function

I have this function, which color every @username contained in a string

//color @username
function hashtag_links($string,$id_session) {
foreach ($matches[1] as $match) {
$string = str_replace("@$match", "<span class=color>@$match</span>", "$string");
return $string;

Everything is good while the usernames are different (@cat,@pencil,@scubadiving), but in case the username starts with the same letters (@cat,@caterpiller,@cattering), the functions only colors the repeated letters in this case (@cat), what to do?

Answer Source

Use preg_replace instead:

//color  @username
function hashtag_links($string,$id_session) {
    return preg_replace('/@(\w+)/', '<span class=color>@$1</span>', $string);
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download