
提取
(PHP3> = 3.0.7,PHP4,PHP5)
说明
intextract(arrayvar_array [,intextract_type [,stringprefix]])
此函数用于将变量从数组导入当前符号表. 接受组合数组var_array作为参数,并使用键名称作为变量名称,并将值用作变量值. 对于每个键/值对,都会在当前符号表中创建一个变量,该变量受extract_type和prefix参数的影响.

注意: 此函数返回从4.0.5版开始提取的变量数.
注意: EXTR_IF_EXISTS和EXTR_PREFIX_IF_EXISTS是在4.2.0版中引入的.
注意: EXTR_REFS是在4.3.0版本中引入的.
extract()检查每个键名,以查看它是否可以用作有效的变量名,还检查与符号表中现有变量名的冲突. 将根据extract_type参数确定处理非法/数字和冲突密钥名称的方法. 可以是以下值之一:
EXTR_OVERWRITE
如果存在冲突,请覆盖现有变量.

EXTR_SKIP
如果存在冲突,请勿覆盖现有变量.
EXTR_PREFIX_SAME
如果存在冲突,请在变量名称前添加一个前缀.
EXTR_PREFIX_ALL
为所有变量名称添加前缀. 从PHP 4.0.5开始,这还包括数字索引的处理.

EXTR_PREFIX_INVALID
仅在非法/数字变量名称前添加前缀. 此标记是在PHP 4.0.5中添加的.
EXTR_IF_EXISTS
仅当当前符号表中已经存在具有相同名称的变量时,才覆盖它们的值. 其他人不予处理. 当您定义了变量的组合,然后想要从$ _REQUEST这样的数组中提取值来覆盖这些变量时分类选项变量名重复,可以使用它. 此标记是在PHP 4.2.0中添加的.
EXTR_PREFIX_IF_EXISTS
仅当当前符号表中已经存在具有相同名称的变量时,才创建带有前缀的变量名称,否则将不进行其他处理. 此标记是在PHP 4.2.0中添加的.

EXTR_REFS
提取变量作为参考. 这强烈表明导入的变量仍引用var_array参数的值. 您可以单独使用此标志,也可以在extract_type中将OR与其他任何标志一起使用. 此标记是在PHP 4.3.0中添加的.
如果未指定extract_type,则假定为EXTR_OVERWRITE.
请注意分类选项变量名重复,仅当extract_type的值为EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS时才需要前缀. 如果前缀结果不是有效的变量名,则不会将其导入到符号表中.
extract()返回成功导入到符号表中的变量数.
--------------------------------------------------- -
带有EXTR_PREFIX_ALL的前缀
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-249656-1.html
美国佬所做的一切