summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorCraig Duncan <git@duncanc.co.uk>2016-10-04 13:27:02 +0100
committerJoe Watkins <krakjoe@php.net>2016-11-17 09:33:04 +0000
commitaaf7341b1ce6889387b4dcdf5a9b04a651076bc6 (patch)
tree5739c2dcb208d928e4b1a5ce48ce30a8b331eed9 /ext
parentd0bdf19eb48f4d1c23b78cb58d2f65d0bc2b6f49 (diff)
downloadphp-git-aaf7341b1ce6889387b4dcdf5a9b04a651076bc6.tar.gz
Add warnings when counting invalid parameters
Diffstat (limited to 'ext')
-rw-r--r--ext/standard/array.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c
index f3a7f4de84..2c51149881 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -790,6 +790,7 @@ PHP_FUNCTION(count)
switch (Z_TYPE_P(array)) {
case IS_NULL:
+ php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable");
RETURN_LONG(0);
break;
case IS_ARRAY:
@@ -820,8 +821,14 @@ PHP_FUNCTION(count)
}
return;
}
+
+ /* If There's no handler and it doesn't implement Countable then add a warning */
+ php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable");
+ RETURN_LONG(1);
+ break;
}
default:
+ php_error_docref(NULL, E_WARNING, "Parameter must be an array or an object that implements Countable");
RETURN_LONG(1);
break;
}