PHP Array Exercises : Generate an array with a range taken from a string
PHP Array: Exercise-29 with Solution
Write a PHP program to generate an array with a range taken from a string.
Sample Solution:
PHP Code:
<?php
// Define a function called string_range that takes a string as input
function string_range($str1)
{
// Use a regular expression to match number ranges in the input string
preg_match_all("/([0-9]{1,2})-?([0-9]{0,2}) ?,?;?/", $str1, $a);
// Initialize an empty array to store the numeric range
$x = array ();
// Iterate through the matched ranges and merge them into a single array
foreach ($a[1] as $k => $v)
{
// Merge the current range into the result array using the range function
$x = array_merge ($x, range ($v, (empty($a[2][$k])?$v:$a[2][$k])));
}
// Return the final array representing the numeric range
return ($x);
}
// Test the function with a sample string and print the result
$test_string = '1-2 18-20 9-11';
print_r(string_range($test_string));
?>
Output:
Array ( [0] => 1 [1] => 2 [2] => 18 [3] => 19 [4] => 20 [5] => 9 [6] => 10 [7] => 11 )
Flowchart:
PHP Code Editor:
Contribute your code and comments through Disqus.
Previous: Write a PHP script to sort an array in reverse order (highest to lowest).
Next: Write a PHP program to create a letter range with arbitrary length.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/php-exercises/php-array-exercise-29.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics