fork(1) download
  1. <?php
  2. function get_string_between($string, $start, $end){
  3. $string = " ".$string;
  4. $ini = strpos($string,$start);
  5. if ($ini == 0) return "";
  6. $ini += strlen($start);
  7. $len = strpos($string,$end,$ini) - $ini;
  8. return substr($string,$ini,$len);
  9. }
  10.  
  11. $original = "'foo, bar', ['name' => 'John, Smith' , 'anotherKey' => 'another value']";
  12. $str = get_string_between($original, "'", "'");
  13. $arr = get_string_between($original, "[", "]");
  14. $arr = json_decode(str_replace(' => ',':',str_replace('\'','"','{'.$arr.'}')), true);
  15. var_dump($str);
  16. print_r($arr);
  17. ?>
Success #stdin #stdout 0.01s 24400KB
stdin
Standard input is empty
stdout
string(8) "foo, bar"
Array
(
    [name] => John, Smith
    [anotherKey] => another value
)