3v4l.org

run code in 300+ PHP versions simultaneously
<?php $fileData = '$orange="100kg";$Apple="400kg";$Peach="543kg";'; $patternVars = '/(?<=\$).*?(?=\=)/m'; $patternValues = '/(?<="(?!;)).*?(?=")/m'; $vars = preg_match_all($patternVars, $fileData, $varMatches); // Match all variables $values = preg_match_all($patternValues, $fileData, $valueMatches); // Match all values forEach($varMatches[0] as $key => $value){ // Use the value to name your variable (hence the weird looking "$$") and set the value of this variable to the matches of your values. $$value = $valueMatches[0][$key]; } var_dump($orange); // Will output "100kg"
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
string(5) "100kg"

preferences:
105.58 ms | 1244 KiB | 4 Q