English | 简体中文 | 繁體中文
查询

extract()函数—用法及示例

「 可以将关联数组中的键值对,转化为变量和变量值 」


函数名称: extract()

适用版本: 所有版本的 PHP

函数用法: extract() 函数可以将关联数组中的键值对,转化为变量和变量值。数组的键名将成为变量名,数组的键值将成为变量的值。这意味着,可以通过变量名直接访问原始数组中的值。

函数示例:

<?php
$details = array(
    'name' => 'John',
    'age' => 25,
    'country' => 'US'
);

extract($details);

echo $name; // 输出:John
echo $age; // 输出:25
echo $country; // 输出:US
?>

在这个示例中,extract() 函数将 $details 数组转化为变量和变量值,并且可以直接使用这些变量来访问数组元素的值。

此外,extract() 函数还有一个可选的参数,用于指定变量的作用域。默认情况下,提取后的变量将在当前的符号表中生效。

<?php
$details = array(
    'name' => 'John',
    'age' => 25,
    'country' => 'US'
);

function getDetails() {
    $details = array(
        'name' => 'Jane',
        'age' => 30,
        'country' => 'UK'
    );
    
    extract($details, EXTR_PREFIX_ALL, "user");
    
    echo $user_name; // 输出:Jane
    echo $user_age; // 输出:30
    echo $user_country; // 输出:UK
}

getDetails();

echo $name; // 输出:John
echo $age; // 输出:25
echo $country; // 输出:US
?>

在这个示例中,使用 EXTR_PREFIX_ALL 参数将提取后的变量名加上前缀 "user_",以避免变量名冲突。extract() 函数在函数内部执行后,不会影响函数外部的同名变量。

补充纠错
上一个函数: extension_loaded()函数
下一个函数: ezmlm_hash()函数
热门PHP函数
分享链接