I know this may be a silly question, but I come across a snippet of php code that check if the $_POST
is_array()
before execute other functions.
$_POST is always an array, they're probably checking if a certain $_POST value is an array.
<input name="test" />
$_POST['test'] is not an array
<input name="test[]" />
$_POST['test'] is an array
If it hasn't been changed in some manner like
$_POST = 'not array';
then it is array ;-)
That check is unnecessary. $_POST is a superglobal array which is always defined. You should just check for specific elements using isset
Its always an array as many already gave said.
I think the intention is maybe to check for an empty array. !empty($_POST) should do just fine.
Maybe the coder has sections where the array is changed to a string (dumb if you ask me) and wants to make the check, else if that statement comes first, then its unnecessary
PHP makes sure that $_POST is always an array, you don't need to do that check unless somewhere in your code you either unset or overwrite $_POST somehow.