3v4l.org

run code in 300+ PHP versions simultaneously
<?php function inject_hyphens($word, $positions) { $pad = 0; foreach ($positions as $position) { $word = substr($word, 0, $position + $pad) . '-' . substr($word, $position + $pad, strlen($word)); $pad++; } return $word; } $input = array('syl-labification', 'sylla-bification', 'syllabi-fication', 'syllabifi-cation', 'syllabifica-tion', 'syllabification' ); //wanted $output = 'syl-la-bi-fi-ca-tion'; $positions = array(); foreach($input as $word) { preg_match_all('/-/', $word, $matches, PREG_OFFSET_CAPTURE); foreach($matches[0] as $key => $value) { $positions[] = $value[1]; } } $positions = array_unique($positions); var_dump(inject_hyphens('syllabification', $positions));
Output for 4.3.3 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.38, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
string(20) "syl-la-bi-fi-ca-tion"
Output for 4.3.0 - 4.3.2
Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 Warning: Wrong value for parameter 4 in call to preg_match_all() in /in/GQ6H2 on line 28 Warning: Invalid argument supplied for foreach() in /in/GQ6H2 on line 29 string(15) "syllabification"

preferences:
332.06 ms | 404 KiB | 452 Q