Void in versions of PHP prior to 4.0.5; in 4.0.5 and later versions, returns the number of elements extracted
This function iterates through the array given by array and, for each element, creates a variable in the local scope that's named by the key of the element and whose value is the value of the element.
There are a couple of issues of which you should be aware. First, if a variable in the local scope has the same name as one of the keys of array , a name collision has occurred and you must decide how to handle it. Second, it's possible for array keys to be values that are not valid as PHP variable names; for instance, numeric indices or values beginning with digits. You can pass collision_flag to specify what to do in these cases. collision_flag must be one of the following named constants:
When prefix is prepended to a variable name, PHP inserts an underscore between prefix and the variable name.
See also compact()
$foo = 'original'; $array = array('foo' => 'new', 'bar' => 'newbar'); extract($array); echo "After extract(): \$foo == $foo; \$bar == $bar\n"; /* Cleanup for testing. */ unset($foo); unset($bar); $foo = 'original'; $array = array('foo' => 'new', 'bar' => 'newbar'); extract($array, EXTR_PREFIX_SAME, 'extr'); echo "After extract(): \$foo == $foo; \$bar == $bar; \$extr_foo == $extr_foo \n"; Output: After extract(): $foo == new; $bar == newbar After extract(): $foo == original; $bar == newbar; $extr_foo == new
PHP Functions Essential Reference. Copyright © 2002 by New Riders Publishing (Authors: Zak Greant, Graeme Merrall, Torben Wilson, Brett Michlitsch). This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). The authors of this book have elected not to choose any options under the OPL. This online book was obtained from http://www.fooassociates.com/phpfer/ and is designed to provide information about the PHP programming language, focusing on PHP version 4.0.4 for the most part. The information is provided on an as-is basis, and no warranty or fitness is implied. All persons and entities shall have neither liability nor responsibility to any person or entity with respect to any loss or damage arising from the information contained in this book.