July 2004
Intermediate to advanced
350 pages
10h 9m
English
PHP 5 complains louder than PHP 4 when you treat a string as an array.
Accessing a multidimensional array element causes a fatal error in PHP 5:
$string = 'string';
print $string[0][0];
PHP Fatal error: Cannot use string offset as an arrayYou can still access an individual character in a string using array
notation, but as of PHP 4, this is deprecated in favor of curly
braces ({ }):
$string = 'string';
// valid, but deprecated
for ($i = 0; $i < strlen($string); $i++) {
print $string[$i];
}
// valid, and preferred
for ($i = 0; $i < strlen($string); $i++) {
print $string{$i};
}
string
stringPassing strings to array_merge( ) and other array
functions generates a warning in PHP 5:
$string = "string"; $array = array_merge($string, $string);PHP Warning: array_merge( ): Argument #1 is not an arrayPHP Warning: array_merge( ): Argument #2 is not an array
This does not generate any messages in PHP 4.