Maison >développement back-end >Problème PHP >Comment convertir une chaîne en nombre en php

Comment convertir une chaîne en nombre en php

PHPz
PHPzoriginal
2023-04-19 10:05:472756parcourir

En programmation PHP, nous devons parfois convertir des chaînes en nombres. Les situations courantes incluent :

1. Convertissez la chaîne numérique saisie par l'utilisateur en un nombre pour le calcul, la comparaison et d'autres opérations.

2. Convertissez tous les éléments de chaîne d'un tableau en nombres.

3. Effectuez des opérations numériques, un formatage, etc. sur une chaîne.

Cet article présentera la méthode de conversion mutuelle entre les chaînes et les nombres en PHP, aidant les lecteurs à mieux comprendre et gérer les problèmes de conversion des chaînes et des nombres.

1. Convertir des chaînes en nombres

En PHP, il existe de nombreuses façons de convertir des chaînes en nombres, notamment la conversion de type, la conversion de fonction, la conversion d'opérateur, etc.

1. Conversion de type

Le moyen le plus simple de convertir une chaîne en nombre consiste à utiliser l'opérateur de conversion de type. Il existe trois opérateurs de conversion de type en PHP, à savoir (int), (float) et (string), qui convertissent respectivement les variables en types entier, à virgule flottante et chaîne.

La syntaxe est la suivante :

(int)$variable
(float)$variable
(string)$variable

L'exemple de code est le suivant :

$string_num = "123";
$int_num = ( int) $string_num;
$float_num = (float) $string_num;

echo gettype($string_num); // Chaîne de sortie
echo gettype($int_num); // Sortie entière
echo gettype($float_num); Résultat de l'opération double

 :

string
integer
double

L'opérateur de conversion de type peut convertir une chaîne en nombre, mais vous devez faire attention aux points suivants :

① Si la chaîne est un nombre à virgule flottante , en utilisant l'opérateur (int) pour le convertir, il sera converti en partie entière, tandis que la conversion de l'opérateur (float) préserve la forme à virgule flottante.

② Si la chaîne contient des caractères non numériques, la conversion à l'aide des opérateurs (int) et (float) supprimera les caractères non numériques et renverra des nombres valides.

③ Si la chaîne est une chaîne vide ou une chaîne numérique illégale, 0 sera renvoyé.

2. Conversion de fonctions

PHP fournit plusieurs fonctions pour convertir des chaînes en nombres, telles que intval(), floatval(), number_format(), etc.

① intval(string $var [, int $base = 10]) : Convertit la chaîne en entier.

syntx : intval(string $var [, int $base = 10]).

L'exemple de code est le suivant :

$number = "123";
$integer = intval($number);

echo gettype($integer); // Sortie entière

Résultat de l'opération :

integer

② floatval (string $var) : Convertit une chaîne en nombre à virgule flottante.

syntaxe : floatval(string $var).

L'exemple de code est le suivant :

$number = "123.45";
$float = floatval($number);

echo gettype($float); // Sortie double

résultat de l'opération :

double

③ number_format (float $num [, int $decimals = 0 [, string $dec_point = "." [, string $thousands_sep = ","]]]) : Formater les nombres.

syntaxe : number_format(float $num [, int $decimals = 0 [, string $dec_point = "." [, string $thousands_sep = ","]]]).

L'exemple de code est le suivant :

$number = "123456789.0123456";
$formatted_num = number_format($number, 2, ".", ",");

echo $formatted_num; // Sortie 123 456 789.01

Résultats d'exécution :

123,456,789.01

3. Conversion d'opérateur

Pendant le processus d'opération, PHP convertira automatiquement les chaînes en nombres pour les calculs, tels que l'addition, la soustraction, la multiplication, la division, la comparaison et d'autres opérations.

L'exemple de code est le suivant :

$x = "3";
$y = "6";
$sum = $x + $y;
$minus = $x - $y;
$product = $x * $y;
$divide = $x / $y;

var_dump($sum); // Sortie int(9)
var_dump($minus); // Sortie int(-3)
var_dump($) product); // Sortie int(18)
var_dump($divide); // Sortie float(0.5)

Résultats de fonctionnement :

int(9)
int(-3)
int(18)
float(0.5 )

2. Convertir des nombres en chaînes

Le moyen le plus simple de convertir des nombres en chaînes consiste à utiliser l'opérateur de concaténation de chaînes (.) pour connecter des nombres et d'autres chaînes ensemble afin de former une nouvelle chaîne.

L'exemple de code est le suivant :

$number = 123;
$string = "Le nombre est " $number;

echo gettype($string); // Output string

Exécuter le résultat :

string.

En même temps, PHP fournit également plusieurs fonctions pour convertir des nombres en chaînes, telles que strval(), sprintf(), etc.

1.strval(mixed $var) : Convertit les variables en chaînes.

syntx:strval(mixte $var).

L'exemple de code est le suivant :

$number = 123;
$string = strval($number);

echo gettype($string); // Chaîne de sortie

Résultat de l'opération :

string

2 .sprintf( string $format, Mixed $var1 [, Mixed $...]) : Combinez la chaîne formatée et les variables dans une nouvelle chaîne.

syntaxe : sprintf(string $format, Mixed $var1 [, Mixed $...]).

L'exemple de code est le suivant :

$number1 = 123;
$number2 = 456;
$string = sprintf("Les nombres sont %d et %d", $number1, $number2);

echo gettype ($string ); // Chaîne de sortie

Exécuter le résultat :

string

Résumé

Cet article présente les méthodes de conversion mutuelle entre les chaînes et les nombres en PHP, notamment la conversion de type, la conversion de fonction, la conversion d'opérateur, etc. Il convient de noter que pendant le processus de conversion, il faut prêter attention à la légalité et à la validité du type de données pour éviter les erreurs de conversion et les erreurs de calcul. Dans le développement réel, la méthode de conversion la plus appropriée doit être sélectionnée en fonction des besoins spécifiques de l'entreprise.

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!

Déclaration:
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