I'm trying to split my hashtags from a string from a single post so if there is more than one in a post they're separated into single #hashtags
and put into separate rows in my hashtag table by their post_id
.
Currently with my below function they're inserted into a single row and listed with a comma. How can I put them into an array and then store them individually, please?
Here is what I've tried to no avail:
$hashtags ="#hashtag1 this is my string with two hashtags #hashtag2";
if($hashtags==""){
}else{
function getHashtagsd($hashtags) {
$hashtagarray = FALSE;
preg_match_all("/(#\w+)/u", $hashtags, $matches);
if ($matches) {
$hashtagarray = implode(",", $matches[0]);
}
return $hashtagarray;
}
$hashtagarray = getHashtagsd($hashtags);
$hashtagarray = getHashtagsd($hashtags);
$myArray1 = explode(';', $hashtagarray);
$myArray = explode('#', $myArray1);
$insertf = "INSERT INTO streamdata_hashtags(streamitem_hashtag_id,hashtag,streamitem_hashtag_timestamp) VALUES ($last_id,'$hashtagarray',NOW())";
$add_postf = mysqli_query($mysqli,$insertf) or die(mysqli_error($mysqli));
}
I added the explodes and got this error:
explode() expects parameter 2 to be string, array given in