Символы на PHP: строка в число и обратно

Информация во все времена представляла собой символы. Только когда появилось программирование, она частично стала буквами, цифрами и знаками (в формальном смысле).

До известного времени наибольшей популярностью пользовалась устная речь, собственноручно изготовленные символы, жесты, а также произведения искусства, в частности. Важно, что все эти варианты естественного представления информации от мала до велика всегда можно было описать словами, то есть сделать доступными программной обработке в том или ином смысле.

PHP строка в число

Строки и числа

Строки - это, прежде всего, совокупности различных символов. В разных средствах программирования дробная часть отделялась от целой по-разному. Одни предпочитали точку, другие запятую (в PHP преобразование строки в число подразумевает "."). Триады разделялись одинарным апострофом, запятой или пробелом. Вещественные числа записывались через букву "Е".


Все это формальности. Математика и принципы работы любого процессора всегда признавали числа без излишеств, а для работы с вещественными значениями были разработаны соответствующие дополнительные процессоры.

PHP преобразование строки в число

Но мир переменных конкретного типа (для программ начала эры) и реализация современной идеи консенсуса всех типов данных означает: в PHP преобразовать строку в число все равно что ничего не сделать. В лучшем случае PHP «отрежет», а точнее, сделает 0 или число, если в исходной строке есть хотя бы одна цифра. Все цифры до первого нецифрового символа составят это число.

Общее правило преобразования

На PHP преобразование строки в число, если программист не указал иное, происходит автоматически в момент применения. Если переменная содержит только цифры и точку, то может быть получено вещественное число. Если в последовательности цифр встретится запятая, то все, что идет до нее, будет интерпретировано как число, естественно, целое.


Любой нецифровой символ в последовательности цифр останавливает процесс, и результат преобразования PHP "строка в число" будет только тем значением, которое сформировалось до первого нецифрового символа.

Математика и обработка символов

Что сложнее, первое или второе, даже с позиций формул, не помещающихся на странице, внушительных матриц, графов, распутать которые порой не могут даже авторы, производных от интегралов, дифференциалов от интегралов и многочленов в n-том поколении, сказать очень просто: общество, несомненно, чтит заслуги математики и математиков, но обработка символов важнее, сложнее и покрывает математику, как пуховое одеяло, обеспечивая пытливому уму, не могущему выйти за пределы магии чисел, благоприятную среду для творчества.

PHP преобразовать строку в число

Обычно на PHP строка в число преобразуется автоматически, но никогда не будет лишним проверить это. Лучше всего всегда быть уверенным: PHP правильно понимает, что та или иная переменная - это число. Если есть хоть тень сомнения, следует явно указать тип переменной (int) или (float) перед значением и проверить, как PHP понимает тип переменной функциями is_integer() или is_float().

Тенденции современного программирования

Классическая интерпретация задачи на PHP "строка в число" лежит в пределах представлений современного программирования. Обратный процесс имеет значительно более разнообразные варианты. Функциями number_format(), printf(), sprintf() можно творить чудеса, причем не только на уровне одного числа, но и группы чисел.

Преобразование на PHP "строка в число" свидетельствует, скорее, о том, что и это можем, но математика и численные вычисления - это не наш конек.

И это можем, но это не наше!

Написать приличный и надежный функционал, реализующий ту или иную обработку чисел на PHP, не представляет проблем, и результат не будет чем-то хуже результата от более математических языков. PHP - это, прежде всего, язык сервера, язык для обработки информации, в том числе и математического характера.

PHP: работа со строками. Строковые функции PHP
Статья рассчитана на начинающих изучать PHP: в ней описаны самые распространенные функции, связанные с работой со строками.
далее
Функция intval() PHP: преобразование в целое число
Преобразование значений переменных в целые числа имеет смысл, когда требуется преобразовать строку в число, извлечь из вещественного числа целую часть или перевести значение из одной системы счисления в другую. Автоматическое формирование стилей и ...
далее
PHP: массивы в строку. Преобразование строк в массивы и обратно
Современные алгоритмы обработки информации ориентируются на максимальную скорость и эффективность. Преобразование данных из одного представления в другое является востребованным, часто единственным, механизмом решения задачи.
далее
Функция strpos в PHP: определение позиции подстроки
Поиск вхождения подстроки в строку с помощью функции PHP strpos(). Типы входных и выходных параметров, примеры и тонкости использования. Похожие функции.
далее
Что это - интеграл, и каков его физический смысл
Жан Гастон Дарбу, французский математик, во второй половине XIX века объяснил, что такое интеграл настолько понятно, что разобраться в этом вопросе не составит труда даже школьнику младших классов средней школы.
далее
Временные метки на PHP: timestamp и вычисление времени
Время всегда имеет значение. Сайт, не контролирующий время и не использующий его непрерывно, не то чтоб не имеет права на жизнь, но однозначно не относится к полнофункциональным современным интернет-ресурсам.
далее
Временные метки на PHP: timestamp и вычисление времени
Узнаем что делает функция PHP microtime?
В одном из самых популярных языков программирования PHP содержится богатая библиотека функций. Каждая из них отличается своими свойствами, но из-за большого числа операций и схожих названий у разработчиков нередко возникает путаница. Вопросы вызывает функция PHP microtime - что она делает и чем отличается от схожих с ней?
далее
Узнаем что делает функция PHP microtime?
PHP iconv: корректная кодировка строк
Вопрос кодировки - наиважнейший вопрос современного интернет-программирования. Проблемы создает сочетание браузера, HTML-страницы и базы данных. Возможны и другие ситуации, но эти самые частые и востребованные.
далее
PHP iconv: корректная кодировка строк
Узнаем как преобразовать в JavaScript строку в число
Нет разницы в том, какого типа переменная используется в выражении. Если выражение математическое, все его переменные автоматически будут интерпретированы как числовые. Если обрабатываются строки, то все «участники» выражения рассматриваются как строки. Однако задача преобразования на JavaScript "строку в число" существует в значительно более широком контексте.
далее
Узнаем как преобразовать в JavaScript строку в число
PHP: регулярные выражения, функция preg match all
Регулярные выражения прочно вошли в арсенал инструментов программирования. Они очень хороши в деле, а к специфическому языку шаблона "регулярки" не так сложно привыкнуть, сделав десяток-другой шаблонов. Эффект в применении настолько хорош, что не поддается определению.
далее
PHP: регулярные выражения, функция preg match all