`

PHP extract() 函数

阅读更多

 

定义和用法

PHP extract() 函数从数组中把变量导入到当前的符号表中。

对于数组中的每个元素,键名用于变量名,键值用于变量值。

第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() 函数如何对待这样的冲突。

本函数返回成功设置的变量数目。

语法

extract(array,extract_rules,prefix)
参数 描述
array 必需。规定要使用的输入。
extract_rules

可选。extract() 函数将检查每个键名是否为合法的变量名,同时也检查和符号表中的变量名是否冲突。

对非法、数字和冲突的键名的处理将根据此参数决定。可以是以下值之一:

可能的值:

  • EXTR_OVERWRITE - 默认。如果有冲突,则覆盖已有的变量。
  • EXTR_SKIP - 如果有冲突,不覆盖已有的变量。(忽略数组中同名的元素)
  • EXTR_PREFIX_SAME - 如果有冲突,在变量名前加上前缀 prefix。自 PHP 4.0.5 起,这也包括了对数字索引的处理。
  • EXTR_PREFIX_ALL - 给所有变量名加上前缀 prefix(第三个参数)。
  • EXTR_PREFIX_INVALID - 仅在非法或数字变量名前加上前缀 prefix。本标记是 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 新加的。
prefix

可选。请注意 prefix 仅在 extract_type 的值是 EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS 时需要。如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。

前缀和数组键名之间会自动加上一个下划线。

例子 1

<?php
$a = 'Original';
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");
extract($my_array);
echo "\$a = $a; \$b = $b; \$c = $c";
?>

输出:

$a = Cat; $b = Dog; $c = Horse

例子 2

使用全部参数:

<?php
$a = 'Original';
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");

extract($my_array, EXTR_PREFIX_SAME, 'dup');

echo "\$a = $a; \$b = $b; \$c = $c; \$dup_a = $dup_a;";
?>

输出:

$a = Original; $b = Dog; $c = Horse; $dup_a = Cat;

摘自W3School

分享到:
评论

相关推荐

    php解压缩函数

    在PHP编程语言中,解压缩函数是用于处理和解析压缩文件(如.zip或.tar.gz)的关键工具。这些函数使得开发者能够方便地读取、提取和操作压缩文件中的内容,这对于数据传输、备份或者存储大量文件时非常有用。下面将...

    php数组函数分类

    ### PHP 数组函数分类 PHP 是一种广泛使用的脚本语言,尤其在 Web 开发领域有着不可替代的地位。其中,PHP 的数组处理能力非常强大,提供了丰富的内置函数来操作数组。根据给定的内容,我们将对 PHP 的数组函数进行...

    PHP函数参考手册(PDF版)

    ### PHP函数参考手册知识点概述 本手册为PHP开发者提供了一个全面、详尽的函数参考指南。作为一门广泛使用的服务器端脚本语言,PHP在Web开发领域占有重要地位。本手册覆盖了从数组处理到日期时间操作等多个方面的...

    PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例

    本篇文章将深入探讨如何使用自定义函数实现类似`assign()`和`extract()`的功能,以便在不依赖特定框架的情况下完成模板变量的分配。 `assign()`函数通常用于将数组或变量分配到模板,以便在模板文件中使用。在这个...

    php.ctl-Editplus的PHP函数自动完成素材库

    7. `php4vars.ctl`:与变量相关的函数,如`extract`、`compact`等,帮助管理程序中的变量。 8. `php4http.ctl`:处理HTTP请求和响应的函数,如`$_GET`、`$_POST`、`header`等,对网络数据传输提供支持。 通过这些...

    PHP extract 将数组拆分成多个变量的函数

    标题和描述中提到的知识点是关于PHP中的extract函数的介绍和应用。extract函数是一个非常实用的内置函数,它能够将一个关联数组中的键值对转换成独立的变量。在PHP的开发过程中,我们常常需要处理数组数据,并将数组...

    PHP中extract()函数的妙用分析

    近日在看一个牛人的代码时,看到一个非常好用的函数:extract(),它的主要作用是将数组展开,键名作为变量名,元素值为变量值,可以说为数组的操作提供了另外一个方便的工具,比方说,可以很方便的提取$_POST或者$_...

    PHP中的extract的作用分析

    addslashes — 使用反斜线引用字符串 extract(addslashes($_POST)); –处理POST表单 把... 您可能感兴趣的文章:VBScript版的PHP extract()函数PHP中extract()函数的定义和用法PHP中extract()函数的妙用分析PHP e

    484个PHP必备的函数集

    ### 484个PHP必备的函数集 #### 概述 本文档旨在提供一系列重要的PHP函数,共计484个,这些函数是PHP开发者在日常工作中经常需要用到的基础工具。通过对这些函数的理解与掌握,可以帮助开发者更加高效地完成任务、...

    VBScript版的PHP extract()函数

    在VBScript环境中,由于没有与PHP的`extract()`函数完全对应的内置功能,开发人员需要自定义函数来实现类似的功能。`extract()`函数在PHP中是一个非常有用的方法,它能够将数组中的键值对转化为单独的变量,使得我们...

    PHP中extract()函数的定义和用法

    定义和用法 PHP extract() 函数从数组中把变量导入到当前的符号表中。 对于数组中的每个元素,键名用于变量名,键值用于变量值。 第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() ...

    php变量与数组相互转换的方法(extract与compact)

    这意味着,如果数组中的一个键名为"name",那么在使用extract函数处理后,会创建一个名为$name的变量,其值为数组中"name"键对应的值。这在需要将数组的内容转换为独立的变量时特别有用。 在使用extract函数时,有...

    php 数组处理函数extract详解及实例代码

    `PHP`的`extract()`函数是一个非常实用的数组处理函数,它允许我们将数组中的元素转换成独立的变量,使得变量名基于数组的键名,变量值则是对应的键值。这在处理表单数据或者需要快速从数组中获取多个变量时非常方便...

    PHP数组函数.doc

    16. **extract**:此函数将关联数组的键转换为变量,并将值赋给这些变量。第二个参数可以是变量提取类型,第三个参数可以设置 flags。 17. **compact**:创建一个数组,其中包含了变量名及其对应的值。例如,`...

    Laravel开发-extract-translations

    3. **运行**:运行`php artisan extract:translations`命令,工具将自动找出项目中的可翻译字符串,并更新翻译文件。 4. **审查与更新**:检查生成的翻译,根据需要进行修改,然后部署到生产环境。 **四、Blade模板...

Global site tag (gtag.js) - Google Analytics