Как преобразовать в число строку в PHP?
Очень часто нам приходится работать с числовой информацией, которая представлена в виде строк. В результате возникает необходимость в преобразования строки в число. Язык программирования PHP предлагает нам несколько возможностей для этого.
Речь идёт о специальных встроенных в PHP функциях, значительно облегчающих программисту задачу преобразования строки в число. Давайте их рассмотрим.
Преобразование строки в число функцией intval()
Представим, что у нас есть строка, включающая в себя один символ — «2». Вот, как будет выглядеть PHP-код преобразования этой строки в число с помощью встроенной функции
$stringNumberToParse = "2"; // var_dump($stringNumberToParse); // string '2' (length=1) // Convert the string to type int $parsedInt = intval($stringNumberToParse); // var_dump(is_int($parsedInt)); // boolean true // var_dump($parsedInt); // int 2 echo $parsedInt;
На выходе получим 2, но уже в виде числа, а не строки.
Давайте пошагово разберём, что же произошло, и расшифруем каждую строчку кода:
1. Объявляется переменная, содержащая строку с символом «1».
2. У нас есть возможность задействовать функцию
Остаётся добавить, что вышеописанная функция работает в PHP разных версий: 4, 5, 7+.
Преобразование строки в число путём приведения типов
Возможность приведения типов есть во многих языках программирования, и PHP исключением не является. В PHP мы тоже можем поменять тип переменной, применив для этого синтаксис приведения типов: (int)$variable, (float)$variable. Посмотрим, как это выглядит в коде:
$stringNumberToParse = "2"; //var_dump($stringNumberToParse); // string '2' (length=1) // Convert the string to type int $parsedInt = (int)$stringNumberToParse; //var_dump(is_int($parsedInt)); // boolean true //var_dump($parsedInt); // int 2 echo $parsedInt;
Результатом будет следующий вывод:
2
Итак, что тут происходит:
1. Объявляется переменная, содержащая строку 1.
2. Есть возможность задействовать функцию
Приведение типов можно успешно использовать и в PHP 5 и в PHP 7+.
Преобразование строки в число с помощью settype()
Также для выполнения преобразования можно использовать функцию
<?php $str = "555"; var_dump($str);//string(3) "555" settype($str, 'integer'); var_dump($str);//int(555) ?>
Можно заметить, что параметр $str передается в функциею
В принципе, вышеперечисленных способов вполне хватит для выполнения преобразования строки в число в PHP. Если же хотите знать больше, ждём вас на наших курсах!
Источники: • «PHP: конвертируем строку»; • «Как преобразовать строку в число в PHP?»; • «Преобразовать строку в число (PHP)».