I have a string such as:
Hello <%First Name%> <%Last Name%> welcome
and I have a array
[0] => Array
(
[First Name] => John
[Last Name] => Smith
)
What I need to do is take the string and replace the words in <% with the actual text from the array
So my output would be
Hello John Smith welcome
Im not sure how to accomplish this but I cant even seem to replace it with regular text
$test = str_replace("<%.*%>","test",$textData['text']);
Sorry I should of mentioned that the array keys may vary as well as the <%First Name%>
so it could even be <%city%>
and the array can be city=>New York
Can you try this,
$string ="Hello <%First Name%> <%Last Name%> welcome";
preg_match_all('~<%(.*?)%>~s',$string,$datas);
$Array = array('0' => array ('First Name' => 'John', 'Last Name' => 'Smith' ));
$Html =$string;
foreach($datas[1] as $value){
$Html =str_replace($value, $Array[0][$value], $Html);
}
echo str_replace(array("<%","%>"),'',$Html);