ShrineDesigns has it right, but I'd probably make that a function since with all those different [] you'd probably want to do it on each of them.
Oh, and @ShrineDesigns, $POST, $GET and $_REQUEST always exists and are set, even if empty... so your first IF statement would always be true.
Also if all you want to do is check if the array is empty, using count would make it simpler.
function postArrayHasValues($index) {
if (!isset($_POST[$index])) return false;
return count($_POST[$index]) > 0;
}
Which you would call thus:
echo '
Has Cities : ', postArrayHasValues('city'), '<br />
Has Regions : ', postArrayHasValues('region'), '<br />
Has Countries : ', postArrayHasValues('country'), '<br />';
You could easily change that to return 0 if it's not set and the count instead of a compare if you need to know how many there are.
function countPostArray($index) {
if (!isset($_POST[$index])) return 0;
return count($_POST[$index]);
}