DISCLAIMER:
As @Jonast92 clarified in the comments this answer doesn't solve the solution, and i agree after re-looking at the question since the values do not actually contain a dot and are not in the form of 1.usa but rather 1usa.
Note: I'll leave the initial answer below for reference but this would only work if the characters were separated by a (.) character and not concatenated directly.
Semi-Invalid Answer:
IF the string was concatenated using a . as a separator as in:
'name' => $id . "." . $country,
You could explode that concatenated string into an array using:
$abc = explode(".",$abc);
Then the id will be stored at index 0 and country at index 1:
$id = $abc[0];
$country = $abc[1];
Just make sure that values do not contain any dot (.) characters as that would produce unwanted results.
Note: You can even limit the number of array elements using:
$abc = explode(".",$abc,2);
which will allow countries to still contain a dot without them breaking up further into an array.
Optimal Solution though would be to split those two values and pass them as seperate parameters before even posting them to the php page and only concatenate them if necessary for your application elsewhere.
$idevery time a fixed length?