>백엔드 개발 >PHP 튜토리얼 >PHP 배열 처리 함수 extract_php 예제에 대한 자세한 설명 및 예제 코드

PHP 배열 처리 함수 extract_php 예제에 대한 자세한 설명 및 예제 코드

WBOY
WBOY원래의
2016-12-05 13:28:261316검색

php 배열 처리 함수 추출

추출 기능은 배열의 변수를 현재 기호 테이블로 가져오는 데 사용됩니다

기본문법

int 추출( 배열 &$var_array [, int $extract_type = EXTR_OVERWRITE [, string $prefix = NULL ]] )

이 함수는 배열의 변수를 현재 기호 테이블로 가져오는 데 사용됩니다. 각 키 이름을 검사하여 합법적인 변수 이름으로 사용할 수 있는지 확인하고, 기호 테이블에서 기존 변수 이름과 충돌하는지 확인합니다.

매개변수 소개:

매개변수 설명 var_array 필수입니다. 사용할 배열을 지정합니다.
参数 描述
var_array 必需。规定要使用的数组。

一个关联数组。此函数会将键名当作变量名,值作为变量的值。 对每个键/值对都会在当前的符号表中建立变量,并受到 extract_type 和 prefix 参数的影响。

必须使用关联数组,数字索引的数组将不会产生结果,除非用了 EXTR_PREFIX_ALL 或者 EXTR_PREFIX_INVALID 。

extract_type

可选。extract() 函数将检查每个键名是否为合法的变量名,同时也检查和符号表中已存在的变量名是否冲突。对不合法和冲突的键名的处理将根据此参数决定。

可能的值:

  • EXTR_OVERWRITE - 默认。如果有冲突,则覆盖已有的变量。
  • EXTR_SKIP - 如果有冲突,不覆盖已有的变量。
  • EXTR_PREFIX_SAME - 如果有冲突,在变量名前加上前缀 prefix。
  • EXTR_PREFIX_ALL - 给所有变量名加上前缀 prefix。
  • EXTR_PREFIX_INVALID - 仅在不合法或数字变量名前加上前缀 prefix。
  • EXTR_IF_EXISTS - 仅在当前符号表中已有同名变量时,覆盖它们的值。其它的都不处理。
  • EXTR_PREFIX_IF_EXISTS - 仅在当前符号表中已有同名变量时,建立附加了前缀的变量名,其它的都不处理。
  • EXTR_REFS - 将变量作为引用提取。导入的变量仍然引用了数组参数的值。
prefix

可选。注意 prefix 仅在 extract_type 的值是 EXTR_PREFIX_SAME ,EXTR_PREFIX_ALL , EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS 时需要。 如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。前缀和数组键名之间会自动加上一个下划线。

연관배열. 이 함수는 키 이름을 변수 이름으로, 값을 변수 값으로 처리합니다. 각 키/값 쌍에 대해 extract_type 및 prefix 매개변수의 영향을 받는 변수가 현재 기호 테이블에 생성됩니다.

연관 배열을 사용해야 하며, EXTR_PREFIX_ALL 또는 EXTR_PREFIX_INVALID를 사용하지 않는 한 숫자로 인덱스된 배열은 결과를 생성하지 않습니다.

추출_유형

선택사항. extract() 함수는 각 키 이름이 유효한 변수 이름인지 확인하고 기호 테이블의 기존 변수 이름과 충돌하는지 확인합니다. 불법적이고 충돌하는 키 이름의 처리는 이 매개변수에 따라 결정됩니다.

가능한 값:

  • EXTR_OVERWRITE - 기본값. 충돌이 있는 경우 기존 변수를 덮어씁니다.
  • EXTR_SKIP - 충돌이 있는 경우 기존 변수를 덮어쓰지 않습니다.
  • EXTR_PREFIX_SAME - 충돌이 있는 경우 변수 이름 앞에 접두사를 붙입니다.
  • EXTR_PREFIX_ALL - 모든 변수 이름 앞에 접두사를 붙입니다.
  • EXTR_PREFIX_INVALID - 잘못된 변수 또는 숫자 변수 이름만 접두사로 사용됩니다.
  • EXTR_IF_EXISTS - 현재 기호 테이블에 이미 존재하는 경우에만 동일한 이름의 변수 값을 덮어씁니다. 그 외는 처리되지 않습니다.
  • EXTR_PREFIX_IF_EXISTS - 현재 심볼 테이블에 동일한 이름의 변수가 이미 존재하는 경우에만 접두사가 붙은 변수 이름이 생성되고 다른 작업은 처리되지 않습니다.
  • EXTR_REFS - 변수를 참조로 추출합니다. 가져온 변수는 여전히 배열 매개변수의 값을 참조합니다.
접두사
<&#63;php
$size = "large";
$var_array = array(
  "color" => "blue",
  "size" => "medium",
  "shape" => "sphere"
);
extract($var_array, EXTR_PREFIX_SAME, "wddx");
echo " $color , $size , $shape , $wddx_size <br/>";
&#63;>  
선택사항. 접두사는 extract_type의 값이 EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID 또는 EXTR_PREFIX_IF_EXISTS인 경우에만 필요합니다. 접두어를 붙인 후의 결과가 합법적인 변수 이름이 아닌 경우 기호 테이블로 가져오지 않습니다. 접두사와 배열 키 이름 사이에 밑줄이 자동으로 추가됩니다.

반환값

기호 테이블로 성공적으로 가져온 변수의 수를 반환합니다.

예: 실행 결과: 파란색, 대형, 구형, 중형 읽어주셔서 감사합니다. 도움이 되기를 바랍니다. 이 사이트를 지원해 주셔서 감사합니다!
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.