Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie Werte in einem Array in Zahlen in PHP

So konvertieren Sie Werte in einem Array in Zahlen in PHP

PHPz
PHPzOriginal
2023-04-18 10:18:591115Durchsuche

In der PHP-Entwicklung müssen wir normalerweise eine numerische Konvertierung der Werte im Array durchführen. Insbesondere bei der Datenverarbeitung und arithmetischen Operationen müssen wir sicherstellen, dass die Werte im Array alle numerischen Typ sind. In diesem Artikel werden verschiedene Möglichkeiten zum Konvertieren von Werten in PHP-Arrays in numerische Typen vorgestellt.

1. Verwenden Sie (int), um

In PHP können Sie (int) verwenden, um eine Variable in einen Ganzzahltyp umzuwandeln. Ebenso können wir es auch verwenden, um die Konvertierung der Werte in einem Array in einen numerischen Typ zu erzwingen. Das Folgende ist ein Beispielcode:

$array = array('1', '2', '3');

foreach ($array as $key => $value) {
    $array[$key] = (int) $value;
}

var_dump($array);

Die Ausgabe lautet:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

Der obige Code durchläuft das Array $array und konvertiert jedes Array-Element mithilfe von Cast in einen Ganzzahltyp. $array,并使用强制类型转换将每个数组元素转换为整数类型。

需要注意的是,强制类型转换只能将字符串转换为数字类型。如果数组中的元素是其他类型的数据(如布尔型、浮点型等),则强制类型转换将会失效。

二、使用 intval() 函数转换

PHP 提供了一个 intval() 函数,用来将变量转换为整数类型。与强制类型转换不同,intval() 可以将字符串、浮点数、布尔值等多种类型的变量转换为整数类型。下面是示例代码:

$array = array('1', '2.5', true, false, '5');

foreach ($array as $key => $value) {
    $array[$key] = intval($value);
}

var_dump($array);

输出结果为:

array(5) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(1)
  [3]=>
  int(0)
  [4]=>
  int(5)
}

以上代码中,使用 intval() 函数将数组中的每个元素都转换为整数类型。由于布尔值转换为整数的规则为 true 转换为 1false 转换为 0,因此在输出结果中,第三个元素转换为了 1,第四个元素转换为了 0

需要注意的是,使用 intval() 函数时,如果参数为空或无法转换为整数类型,则会返回 0。

三、使用 array_map() 函数转换

除了 for 循环和 foreach 循环之外,还可以使用 array_map() 函数将数组中的元素转换为数字类型。array_map() 函数可以将传入的数组中的每个元素都经过回调函数处理,并返回处理后的新数组。下面是示例代码:

$array = array('1', '2', '3');

$array = array_map('intval', $array);

var_dump($array);

输出结果为:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

以上代码将 intval() 函数作为回调函数传递给了 array_map() 函数。array_map() 会遍历每个元素并对其调用回调函数,最后返回处理后的新数组。在本例中,array_map() 将返回将每个字符串元素转换为整数类型后的数组。

需要注意的是,array_map() 函数不会更改原始数组,而是返回一个新数组。如果要更改原始数组,需要将新数组赋值回原始数组中。

总结

本文介绍了三种将 PHP 数组中的值转换为数字类型的方法。无论是使用强制类型转换、intval() 函数还是 array_map()

Es ist zu beachten, dass Cast nur Zeichenfolgen in numerische Typen konvertieren kann. Wenn es sich bei den Elementen im Array um andere Datentypen handelt (z. B. Boolean, Gleitkomma usw.), schlägt die Umwandlung fehl. 🎜🎜2. Verwenden Sie die Funktion intval() zum Konvertieren 🎜🎜PHP bietet eine Funktion intval() zum Konvertieren von Variablen in Ganzzahltypen. Im Gegensatz zur erzwungenen Typkonvertierung kann intval() Variablen verschiedener Typen wie Zeichenfolgen, Gleitkommazahlen und boolesche Werte in ganzzahlige Typen konvertieren. Das Folgende ist ein Beispielcode: 🎜rrreee🎜Das Ausgabeergebnis ist: 🎜rrreee🎜Im obigen Code wird die Funktion intval() verwendet, um jedes Element im Array in einen Ganzzahltyp zu konvertieren. Da die Regel für die Konvertierung boolescher Werte in Ganzzahlen lautet, dass true in 1 und false in 0 konvertiert wird. code>, also wird in der Ausgabe das dritte Element in <code>1 und das vierte Element in 0 konvertiert. 🎜🎜Es ist zu beachten, dass bei Verwendung der Funktion intval() 0 zurückgegeben wird, wenn der Parameter leer ist oder nicht in einen Ganzzahltyp konvertiert werden kann. 🎜🎜3. Verwenden Sie die Funktion array_map() zum Konvertieren 🎜🎜Zusätzlich zur for-Schleife und foreach-Schleife können Sie auch die Funktion array_map() verwenden, um die Elemente im Array in einen numerischen Wert zu konvertieren Typ. Die Funktion array_map() kann jedes Element im eingehenden Array über die Rückruffunktion verarbeiten und das verarbeitete neue Array zurückgeben. Das Folgende ist der Beispielcode: 🎜rrreee🎜Das Ausgabeergebnis ist: 🎜rrreee🎜Der obige Code übergibt die Funktion intval() als Rückruffunktion an array_map() Funktion. array_map() durchläuft jedes Element, ruft die Rückruffunktion dafür auf und gibt schließlich das neue verarbeitete Array zurück. In diesem Beispiel gibt array_map() ein Array zurück, bei dem jedes Zeichenfolgenelement in einen Ganzzahltyp konvertiert wird. 🎜🎜Es ist zu beachten, dass die Funktion array_map() das ursprüngliche Array nicht ändert, sondern ein neues Array zurückgibt. Wenn Sie das ursprüngliche Array ändern möchten, müssen Sie das neue Array wieder dem ursprünglichen Array zuweisen. 🎜🎜Zusammenfassung🎜🎜In diesem Artikel werden drei Methoden zum Konvertieren von Werten in PHP-Arrays in numerische Typen vorgestellt. Sie können die Elemente in einem Array problemlos in einen numerischen Typ konvertieren, sei es mithilfe einer Umwandlung, der Funktion intval() oder der Funktion array_map(). Wählen Sie während des Entwicklungsprozesses einfach die geeignete Methode entsprechend den tatsächlichen Anforderungen aus. 🎜

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie Werte in einem Array in Zahlen in PHP. 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