Maison > développement back-end > Problème PHP > Comment convertir les valeurs d'un tableau en nombres en php

Comment convertir les valeurs d'un tableau en nombres en php

PHPz
Libérer: 2023-04-18 13:52:03
original
1188 Les gens l'ont consulté

Dans le développement PHP, nous devons généralement effectuer une conversion numérique sur les valeurs du tableau. Surtout lors du traitement des données et des opérations arithmétiques, nous devons nous assurer que les valeurs du tableau sont toutes de type numérique. Cet article présentera plusieurs façons de convertir les valeurs des tableaux PHP en types numériques.

1. Utilisez (int) pour convertir

En PHP, vous pouvez utiliser (int) pour convertir une variable en un type entier. De même, nous pouvons également l'utiliser pour forcer la conversion des valeurs d'un tableau en type numérique. Voici un exemple de code :

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

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

var_dump($array);
Copier après la connexion

Le résultat est :

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
Copier après la connexion
Copier après la connexion

Le code ci-dessus parcourra le tableau $array et utilisera cast pour convertir chaque élément du tableau en un type entier. $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);
Copier après la connexion

输出结果为:

array(5) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(1)
  [3]=>
  int(0)
  [4]=>
  int(5)
}
Copier après la connexion

以上代码中,使用 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);
Copier après la connexion

输出结果为:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
Copier après la connexion
Copier après la connexion

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

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

总结

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

Il convient de noter que cast ne peut convertir que des chaînes en types numériques. Si les éléments du tableau sont d'autres types de données (tels que booléens, à virgule flottante, etc.), la conversion échouera. 🎜🎜2. Utilisez la fonction intval() pour convertir 🎜🎜PHP fournit une fonction intval() pour convertir les variables en types entiers. Différent de la conversion de type forcée, intval() peut convertir des variables de différents types tels que des chaînes, des nombres à virgule flottante et des valeurs booléennes en types entiers. Voici un exemple de code : 🎜rrreee🎜Le résultat de sortie est : 🎜rrreee🎜Dans le code ci-dessus, la fonction intval() est utilisée pour convertir chaque élément du tableau en un type entier. Puisque la règle pour convertir les valeurs booléennes en entiers est que true est converti en 1 et false est converti en 0 code>, donc dans la sortie Dans le résultat, le troisième élément est converti en <code>1 et le quatrième élément est converti en 0. 🎜🎜Il est à noter que lors de l'utilisation de la fonction intval(), si le paramètre est vide ou ne peut pas être converti en type entier, 0 sera renvoyé. 🎜🎜3. Utilisez la fonction array_map() pour convertir 🎜🎜En plus de la boucle for et de la boucle foreach, vous pouvez également utiliser la fonction array_map() pour convertir les éléments du tableau en valeur numérique. taper. La fonction array_map() peut traiter chaque élément du tableau entrant via la fonction de rappel et renvoyer le nouveau tableau traité. Voici l'exemple de code : 🎜rrreee🎜Le résultat de sortie est : 🎜rrreee🎜Le code ci-dessus transmet la fonction intval() comme fonction de rappel au array_map() fonction. array_map() parcourra chaque élément et appellera la fonction de rappel dessus, et finalement renverra le nouveau tableau traité. Dans cet exemple, array_map() renvoie un tableau avec chaque élément de chaîne converti en type entier. 🎜🎜Il est à noter que la fonction array_map() ne modifie pas le tableau d'origine, mais renvoie un nouveau tableau. Si vous souhaitez modifier le tableau d'origine, vous devez réattribuer le nouveau tableau au tableau d'origine. 🎜🎜Résumé🎜🎜Cet article présente trois méthodes pour convertir les valeurs des tableaux PHP en types numériques. Vous pouvez facilement convertir les éléments d'un tableau en type numérique, que ce soit en utilisant un transtypage, la fonction intval() ou la fonction array_map(). Pendant le processus de développement, choisissez simplement la méthode appropriée en fonction des besoins réels. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal