code: 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;
      }
docs: Parses a string returns media links etc
  
  @param type $string