123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- --TEST--
- Testing empty() with string offsets
- --FILE--
- <?php
- print "- empty ---\n";
- $str = "test0123";
- var_dump(empty($str[-1]));
- var_dump(empty($str[-10]));
- var_dump(empty($str[-4])); // 0
- var_dump(empty($str[0]));
- var_dump(empty($str[1]));
- var_dump(empty($str[4])); // 0
- var_dump(empty($str[5])); // 1
- var_dump(empty($str[8]));
- var_dump(empty($str[10000]));
- // non-numeric offsets
- print "- string literal ---\n";
- var_dump(empty($str['-1'])); // 3
- var_dump(empty($str['-10']));
- var_dump(empty($str['0']));
- var_dump(empty($str['1']));
- var_dump(empty($str['4'])); // 0
- var_dump(empty($str['1.5']));
- var_dump(empty($str['good']));
- var_dump(empty($str['3 and a half']));
- print "- string variable ---\n";
- var_dump(empty($str[$key = '-1'])); // 3
- var_dump(empty($str[$key = '-10']));
- var_dump(empty($str[$key = '0']));
- var_dump(empty($str[$key = '1']));
- var_dump(empty($str[$key = '4'])); // 0
- var_dump(empty($str[$key = '1.5']));
- var_dump(empty($str[$key = 'good']));
- var_dump(empty($str[$key = '3 and a half']));
- print "- bool ---\n";
- var_dump(empty($str[true]));
- var_dump(empty($str[false]));
- var_dump(empty($str[false][true]));
- print "- null ---\n";
- var_dump(empty($str[null]));
- print "- double ---\n";
- var_dump(empty($str[-1.1]));
- var_dump(empty($str[-10.5]));
- var_dump(empty($str[-4.1]));
- var_dump(empty($str[-0.8]));
- var_dump(empty($str[-0.1]));
- var_dump(empty($str[0.2]));
- var_dump(empty($str[0.9]));
- var_dump(empty($str[M_PI]));
- var_dump(empty($str[100.5001]));
- print "- array ---\n";
- var_dump(empty($str[array()]));
- var_dump(empty($str[array(1,2,3)]));
- print "- object ---\n";
- var_dump(empty($str[new stdClass()]));
- print "- resource ---\n";
- $f = fopen(__FILE__, 'r');
- var_dump(empty($str[$f]));
- print "done\n";
- ?>
- --EXPECTF--
- - empty ---
- bool(false)
- bool(true)
- bool(true)
- bool(false)
- bool(false)
- bool(true)
- bool(false)
- bool(true)
- bool(true)
- - string literal ---
- bool(false)
- bool(true)
- bool(false)
- bool(false)
- bool(true)
- bool(true)
- bool(true)
- bool(true)
- - string variable ---
- bool(false)
- bool(true)
- bool(false)
- bool(false)
- bool(true)
- bool(true)
- bool(true)
- bool(true)
- - bool ---
- bool(false)
- bool(false)
- bool(true)
- - null ---
- bool(false)
- - double ---
- Deprecated: Implicit conversion from float -1.1 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float -10.5 to int loses precision in %s on line %d
- bool(true)
- Deprecated: Implicit conversion from float -4.1 to int loses precision in %s on line %d
- bool(true)
- Deprecated: Implicit conversion from float -0.8 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float -0.1 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float 0.2 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float 0.9 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float 3.141592653589793 to int loses precision in %s on line %d
- bool(false)
- Deprecated: Implicit conversion from float 100.5001 to int loses precision in %s on line %d
- bool(true)
- - array ---
- bool(true)
- bool(true)
- - object ---
- bool(true)
- - resource ---
- bool(true)
- done
|