1
0
mirror of https://github.com/php/php-src.git synced 2026-04-21 15:08:16 +02:00
Files
archived-php-src/Zend/tests/offset_long.phpt
T
Nikita Popov c42b7dd6d3 Throw notice on array access on illegal type
No notice is thrown for list() accesses, because we did not come
to an agreement regarding patterns like

    while ([$key, $value] = yield $it->next()) { ... }

where silent null access may be desirable.

No effort is made to suppress multiple notices in access chains
likes $x[0][0][0], because the technical complexity this causes
does not seem worthwhile.

RFC: https://wiki.php.net/rfc/notice-for-non-valid-array-container
2019-07-10 12:02:14 +02:00

55 lines
1.1 KiB
PHP

--TEST--
using different variables to access long offsets
--FILE--
<?php
$long = 1;
var_dump($long[1]);
var_dump($long[0.0836]);
var_dump($long[NULL]);
var_dump($long["run away"]);
var_dump($long[TRUE]);
var_dump($long[FALSE]);
$fp = fopen(__FILE__, "r");
var_dump($long[$fp]);
$obj = new stdClass;
var_dump($long[$obj]);
$arr = Array(1,2,3);
var_dump($long[$arr]);
echo "Done\n";
?>
--EXPECTF--
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Notice: Trying to access array offset on value of type int in %s on line %d
NULL
Done