Heim  >  Artikel  >  Backend-Entwicklung  >  Analysieren Sie die Funktion extract() in PHP (mit Codebeispielen)

Analysieren Sie die Funktion extract() in PHP (mit Codebeispielen)

autoload
autoloadOriginal
2021-04-25 10:03:585930Durchsuche

Bei der täglichen Verwendung von PHP müssen wir aus Gründen der Benutzerfreundlichkeit häufig die Daten im PHP-Array direkt in separate Variablen ändern, um den Anweisungen nicht folgen zu müssen Anweisungen während der Verwendung können verwendet werden, um den Wert des Arrays zu verwenden. In diesem Artikel werfen Sie einen Blick auf die in PHP integrierte Funktion extract() Wir lösen dieses Problem. PHP的日常使用中,我们经常需要将PHP数组中的数据直接变为一个个单独的变量,以方便使用,免得使用过程中需要按照数组的格式才能对数组的值进行使用,本文就带大家一起来看一看PHP中的内置函数extract(),帮助我们解决这一麻烦。

首先我们来看一看,extrac()函数的语法:

extract  (array $arr, int $flags = EXTR_OVERWRITE   , string $prefix = "" )
  • $arr:关联数组(数字索引的数组将不会产生结果,除非用了  $flags=EXTR_PREFIX_ALL 或者 EXTR_PREFIX_INVALID。 )

  • $flags:可选,对待非法/数字和冲突的键名的方法将根据取出标记$flags 参数决定

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

  • 返回值:返回成功导入到符号表中的变量数目。

代码示例:

1.只有$arr一个参数

<?php

    $arr=array(
        "name"=>"张三",
        "age"=>"27",
        "gender"=>"男",
        "profession"=>"法外狂徒"
    );
    $extract_num=extract($arr);
    echo $extract_num."<br>";
    echo $name."<br>";
    echo $age."<br>";
    echo $gender."<br>";
    echo $profession."<br>";
输出:4
      张三
      27
      男
      法外狂徒

2.三个参数

<?php
   $profession="职业张三";
    $arr=array(
        "name"=>"张三",
        "age"=>"27",
        "gender"=>"男",
        "profession"=>"法外狂徒",
    );
    $extract_num= extract($arr, EXTR_PREFIX_SAME, "wddx");
    echo $extract_num."<br>";
    echo $name."<br>";
    echo $age."<br>";
    echo $gender."<br>";
    echo $profession."<br>";
    echo $wddx_profession."<br>";
输出:  4
        张三
        27
        男
        职业张三
        法外狂徒

我们会发现原变量未被覆盖,因为$flag的值为EXTR_PREFIX_SAME,在出现冲突时添加了前缀$prefix

<span label="强调" style="font-size: 16px; font-style: italic; font-weight: bold; line-height: 18px;">推荐:</span>《<a href="https://www.php.cn/toutiao-415599.html" target="_self" style="white-space: normal;">2021年PHP面试题大汇总(收藏)</a>》《<a href="https://www.php.cn/course/list/29.html" target="_self" style="white-space: normal;">php视频教程</a>》

Werfen wir zunächst einen Blick auf die Syntax der Funktion extrac(): 🎜rrreee
  • 🎜$arr: associative array ( Numerisch indizierte Arrays liefern keine Ergebnisse, es sei denn, $flags=EXTR_PREFIX_ALL oder EXTR_PREFIX_INVALID wird verwendet. )🎜
  • 🎜$flags: Optional basiert die Methode zur Behandlung illegaler/numerischer und widersprüchlicher Schlüsselnamen auf dem Extraktion. $flags-Parameterentscheidung markieren 🎜
  • 🎜$prefix: optional, nur erforderlich, wenn $flags=EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID, EXTR_PREFIX_IF_EXISTS. Wenn das Ergebnis nach dem Anhängen des Präfixes kein zulässiger Variablenname ist, wird dieser nicht in die Symboltabelle importiert. Zwischen dem Präfix und dem Array-Schlüsselnamen wird automatisch ein Unterstrich eingefügt. 🎜
  • 🎜Rückgabewert: Gibt die Anzahl der erfolgreich in die Symboltabelle importierten Variablen zurück. 🎜
🎜Codebeispiel: 🎜🎜1. Es gibt nur einen Parameter $arr🎜rrreeerrreee 🎜2. Drei Parameter🎜rrreeerrreee🎜Wir werden feststellen, dass die ursprüngliche Variable nicht überschrieben wird, weil $flag code> Der Wert ist <code>EXTR_PREFIX_SAME und das Präfix $prefix
🎜🎜<span label="emphasis" style="font-size" ist im konfliktfall hinzugef schriftst fett zeilenh>Empfohlen:</span><a href="https://www.php.cn/toutiao%20-415599.html%20" target="_self" style="white-space: normal;">Zusammenfassung der PHP-Interviewfragen 2021 (Sammlung)</a>" <a href="https://www.php.cn/course%20/list/29.html" target="_self" style="white-space: normal;">php-Video-Tutorial</a>》🎜

Das obige ist der detaillierte Inhalt vonAnalysieren Sie die Funktion extract() in PHP (mit Codebeispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn