src/Model/Media/Medialink.php
public static function parse(&$string) {

        $media = array(
            "objects" => array(), //All @mentions, you can mention anytype of object
            "hashes" => array(), //You can use any kind of hashes
            "links" => array(), //Will attempt to fetch link descriptions where possible
        );

        //Match mentions, urls, and hastags
        preg_match_all('#@([\\d\\w]+)#', $string, $mentions);
        preg_match_all('/#([\\d\\w]+)/', $string, $hashTags);
        preg_match_all('/((http|https|ftp|ftps)\:\/\/)([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?([a-zA-Z0-9\-\.]+)\.([a-zA-Z]{2,3})(\:[0-9]{2,5})?(\/([a-z0-9+\$_-]\.?)+)*\/?/', $data, $openLinks);

        //print_R($mentions);
        //print_R($hashTags);
        //print_R($openLinks);
        //$string = "parsed";

        return $media;
    }
public static function parse(&$string) {

        $media = array(
            "objects" => array(), //All @mentions, you can mention anytype of object
            "hashes" => array(), //You can use any kind of hashes
            "links" => array(), //Will attempt to fetch link descriptions where possible
        );

        //Match mentions, urls, and hastags
        preg_match_all('#@([\\d\\w]+)#', $string, $mentions);
        preg_match_all('/#([\\d\\w]+)/', $string, $hashTags);
        preg_match_all('/((http|https|ftp|ftps)\:\/\/)([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?([a-zA-Z0-9\-\.]+)\.([a-zA-Z]{2,3})(\:[0-9]{2,5})?(\/([a-z0-9+\$_-]\.?)+)*\/?/', $data, $openLinks);

        //print_R($mentions);
        //print_R($hashTags);
        //print_R($openLinks);
        //$string = "parsed";

        return $media;
    }
Parses a string returns media links etc

@param type $string