Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

WBOY
WBOYOriginal
2021-11-05 10:39:274469Durchsuche

Im vorherigen Artikel „Wie vergleiche ich Strings in PHP?“ (Erläuterung der Beispiele) " Wir haben die relevanten Kenntnisse zum Vergleichen zweier Zeichenfolgen in PHP ausführlich vorgestellt. In diesem Artikel werfen wir einen Blick auf die relevanten Kenntnisse zu Array-Operationen in PHP. Ich hoffe, dass es hilfreich sein wird alle. !

PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

Im vorherigen Artikel haben wir gelernt, dass wir Strings über die Funktion strcmp() und die Funktion strcasecmp() vergleichen können. Strings sind in PHP einer von Die wichtigen Datentypen im PHP-Entwicklungsprozess sind Arrays. Wir haben gelernt, dass Strings verglichen, positioniert, ersetzt usw. werden können. Welche sind also die häufig verwendeten Methoden für Arrays, die gleichermaßen wichtig sind? strcmp()函数 和 strcasecmp() 函数来进行字符串的比较,字符串是PHP中的重要数据类型之一,PHP开发过程中还有很重要的数据类型就是数组,我们了解了可以对字符串进行比较、定位和替换等等的操作,那么对于同样重要的数组我们有什么常用的操作吗?

在之前的文章《PHP中怎样去定位字符串与数组中的元素?》我们讲到了怎样去搜索定位字符串与数组中的元素,其中讲到可以通过preg_grep()函数来对数组元素进行定位搜索,下面我们就来看一下更多的方法去查找和搜索数组中的元素。

<strong><span style="font-size: 20px;">in_array</span></strong>()函数-匹配数组元素返回布尔

在PHP中我们可以通过in_array()函数来对数组中的元素进行搜索,in_array()函数的基本语法格式如下:

in_array(search,array,type)

其中需要注意的是:参数search表示的是我们需要在数组中搜索的值,参数array表示的是我们需要进行搜索的数组,参数type是一个可选参数,如果参数的取值是true的话,在搜索的时候就会检查搜索的数据和所搜索的数组数据类型是否形同。

如果在数组中找到了我们需要搜的的值,函数返回的结果就是true;如果没有在数组中找到我们需要搜索到的值,返回的结果就是false

接下来我们通过简单的示例来看一下PHP中in_array()函数的应用,示例如下:

<?php
$people = array("Bill", "bob", "Mark", "coc");
if (in_array("23", $people, TRUE))
  {
  echo "在数组中";
  }
else
  {
  echo "不在数组中";
  }
  echo &#39;<br/>&#39;;
if (in_array("Mark",$people, TRUE))
  {
  echo "在数组中";
  }
else
  {
  echo "不在数组中";
  }
  echo &#39;<br/>&#39;;
if (in_array("bill",$people, TRUE))
  {
  echo "在数组中";
  }
else
  {
  echo "不在数组中";
  }
?>

输出结果:

PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

在上述示例中,我们第三次匹配搜索的时候,我们是用来小写,并没有匹配成功,其中需要注意的是如果我们需要搜索的内容是个字符串的话,并且参数type的设置为true,那么进行搜索的时候就会区分大小写。

<strong><span style="font-size: 20px;">array_search</span></strong>() 函数-匹配数组元素返回键名

上文中的in_array函数知识单纯地搜索判断数组中有没有我们需要进行找的元素,还没办法进行定位,想要准确的进行定位找到的话呢,在PHP中我们可以通过array_search() 函数,该函数可以搜索元素,返回的结果是我们搜索元素的键名。

array_search()函数的基本语法格式如下:

array_search(value,array,strict)

其中需要进行注意的是:参数value是我们需要进行搜索的键值,参数array就是我们需要进行搜索的数组,参数strict是一个可选参数,该参数默认情况下是flase,如果参数设置为true的话,在搜索的时候就会检查搜索的数据和所搜索的数组数据类型是否形同。

如果在数组中搜索到了对应的键值,返回的结果就是这个键值对应的键名;如果没有匹配到的话,返回的结果就是flase;其中需要注意一下,如果匹配到的键值不止一个,这时候返回的结果就是第一次匹配到键值的键名。

下面我们通过示例来看一下array_search函数的使用,示例如下:

<?php
$a=array("a"=>"5","b"=>5,"c"=>"5");
echo array_search(5,$a,true) . &#39;<br/>&#39;;
$array = array(0 => &#39;blue&#39;, 1 => &#39;red&#39;, 2 => &#39;green&#39;, 3 => &#39;red&#39;);
echo array_search(&#39;green&#39;,$array,true);
?>

输出结果:

PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

其中需要注意的是,当参数设置为true的时候,在数组进行搜索匹配的时候,不同的数据形式搜索的结果是不同的。

<strong><span style="font-size: 20px;">array_key_exists</span></strong>()函数-匹配数组键名返回布尔

在上文中我们通过array_search函数能够通过搜索键值输出搜索元素的键名,在PHP中也可以直接搜索键名。那就是通过PHP中的array_key_exists函数。

array_key_exists

Im vorherigen Artikel „Wie finde ich Elemente in Strings und Arrays in PHP? 🎜》Wir haben darüber gesprochen, wie man Elemente in Strings und Arrays sucht. Wir haben erwähnt, dass Sie die Funktion preg_grep() verwenden können, um Array-Elemente zu finden und zu suchen und Elemente in einem Array suchen. 🎜🎜<strong><span style="font-size: 20px;">in_array</span></strong> ()-Funktion – passende Array-Elemente geben einen booleschen Wert zurück🎜🎜In PHP können wir über die Funktion in_array(), in_array() lautet wie folgt: 🎜<pre class="brush:php;toolbar:false">array_key_exists(key,array)</pre>🎜Es ist zu beachten, dass der Parameter <code>search den Wert darstellt, den wir im Array suchen müssen, und der Parameter array stellt das Array dar, das wir durchsuchen müssen. Der Parameter type ist ein optionaler Parameter. Wenn der Wert des Parameters true ist, wird die Suche überprüft die Suche. Ob der Datentyp mit dem gesuchten Array-Datentyp übereinstimmt.
🎜🎜Wenn der Wert, den wir suchen müssen, im Array gefunden wird, ist das von der Funktion zurückgegebene Ergebnis true; wenn der Wert, den wir suchen müssen, nicht im Array gefunden wird Das zurückgegebene Ergebnis ist false. 🎜🎜Als nächstes schauen wir uns die Anwendung der Funktion in_array() in PHP anhand eines einfachen Beispiels an. Das Beispiel sieht wie folgt aus:
🎜
<?php
$people = array("Bill", "a"=>"bob", "Mark", "coc");
if (array_key_exists(0, $people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
  echo &#39;<br/>&#39;;
if (array_key_exists("a",$people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
  echo &#39;<br/>&#39;;
if (array_key_exists("coc",$people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
?>
🎜Ausgabeergebnis:🎜🎜PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht🎜🎜Wenn wir im obigen Beispiel nach der dritten Übereinstimmung suchen, Wir verwenden In Kleinbuchstaben gibt es keine erfolgreiche Übereinstimmung. Es ist zu beachten, dass bei der Suche die Groß-/Kleinschreibung beachtet wird, wenn der zu durchsuchende Inhalt eine Zeichenfolge ist und der Parametertyp auf „true“ festgelegt ist. 🎜🎜<strong><span style="max-width:90%">array_search</span></strong> () Funktion – Array-Elemente abgleichen und Schlüsselnamen zurückgeben🎜🎜Das obige in_array-Funktionswissen sucht einfach, um festzustellen, ob es Elemente gibt, die wir im Array If finden müssen Wenn Sie es genau lokalisieren möchten, können wir die Funktion array_search() in PHP verwenden. Diese Funktion kann nach Elementen suchen und das zurückgegebene Ergebnis ist der Schlüsselname des gesuchten Elements. Das grundlegende Syntaxformat der Funktion 🎜🎜array_search() lautet wie folgt: 🎜rrreee🎜Was zu beachten ist, ist, dass der Parameter value der Schlüsselwert ist, den wir benötigen search, und der Parameter array ist das Array, das wir durchsuchen müssen. Der Parameter strict ist ein optionaler Parameter . Wenn der Parameter auf true gesetzt ist, wird beim Suchen überprüft, ob die gesuchten Daten und der gesuchte Array-Datentyp identisch sind.
🎜🎜Wenn der entsprechende Schlüsselwert im Array gesucht wird, ist das zurückgegebene Ergebnis der Schlüsselname, der dem Schlüsselwert entspricht. Wenn keine Übereinstimmung vorliegt, ist das zurückgegebene Ergebnis zu beachten Wenn mehr als ein Schlüsselwert vorhanden ist, ist das zu diesem Zeitpunkt zurückgegebene Ergebnis der Schlüsselname, der zum ersten Mal mit dem Schlüsselwert übereinstimmt. 🎜🎜Sehen wir uns die Verwendung der Funktion array_search anhand eines Beispiels an. Das Beispiel sieht wie folgt aus: 🎜rrreee🎜Ausgabeergebnis: 🎜🎜PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht🎜🎜Es ist zu beachten, dass bei der Suche der Parameter auf true gesetzt ist und beim Abgleich im Array sind die Suchergebnisse für verschiedene Datenformen unterschiedlich. 🎜🎜<strong><span style="max-width:90%">array_key_exists</span></strong> ()-Funktion – passender Array-Schlüsselname gibt Booleschen Wert zurück🎜🎜Im Obigen können wir die Funktion array_search verwenden, um den Schlüsselnamen des Suchelements über den Suchschlüssel auszugeben Auch in PHP können Schlüsselnamen direkt gesucht werden. Dies geschieht über die Funktion array_key_exists in PHP. 🎜🎜Das grundlegende Syntaxformat der Funktion array_key_exists lautet wie folgt: 🎜
array_key_exists(key,array)

其中需要注意的是:参数key表示的就是我们需要所搜的键名,参数array标识的就是我们需要进行搜索的数组,

通过array_key_exists函数只能够判断一维数组中的键名不能判断多维数组中数组内的键名,如果在数组中匹配到了指定的键名,该函数返回的结果就是true,如果数组中没有匹配到。返回的结果就是flase。

下面我们通过示例来看一下array_key_exists函数的使用,示例如下:

<?php
$people = array("Bill", "a"=>"bob", "Mark", "coc");
if (array_key_exists(0, $people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
  echo &#39;<br/>&#39;;
if (array_key_exists("a",$people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
  echo &#39;<br/>&#39;;
if (array_key_exists("coc",$people,))
  {
  echo "键名存在";
  }
else
  {
  echo "键名不存在";
  }
?>

输出结果:

PHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht

由此我们便通过array_key_exists来进行在一个数组中找到一个指定的键。

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

Das obige ist der detaillierte Inhalt vonPHP-Array-Operation, die Suchelemente und Schlüsselnamen im Array abgleicht. 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