Особливості числового типу
У PHP існують два типи числових даних - це цілі (integer) і дробові (float). Числа є простим типом [1]. Існує маса відмінностей у внутрішній роботі інтерпретатора по відношенню до них.
Максимально можливе ціле число залежить від операційної системи вашого комп'ютера і його комплектації. На 32x розрядному процесорі максимальне ціле дорівнює приблизно двом мільярдам, а на 64x розрядному понад дев'ять квінтильйонів (що дорівнює дев'яти мільярдів мільярдів). Це астрономічне число в короткій формі записується як «9E18».
Максимально можливе дробове число залежить від комплектації комп'ютера. На 64x розрядних процесорах воно становить «1,8E308». Як можна помітити це набагато більше ніж максимальне ціле. Причина криється в тому, що цілі числа такого розміру на практиці не використовуються. Такі діапазони необхідні для більш точних обчислень, що мають цілу і дробову частину.
важливо
Якщо ціле число виходить за максимально допустимий діапазон, то PHP автоматично перетворює його в дробове. Це необхідно для розширення і підтримки цілісності результату обчислення.
Системи числення і негативні числа
Щоб зробити число від'ємним в мові програмування PHP, перед ним необхідно поставити знак «-». Негативне число може вийти і в результаті обчислень.
У звичайному житті ми використовуємо десятеричная систему числення [2]. але в програмуванні іноді необхідно оперувати вісімковими, шестнадцатерічнимі і навіть двійковими числами. Існує особливий синтаксис їх визначення. Потрібно відзначити, що числа задані в системах числення, відмінних від десяткової, не можуть бути негативними.
Синтаксис різних систем числення:
- щоб визначити число як шістнадцяткове, перед ним потрібно поставити символи «0x».
- щоб задати число в вісімковій системі, набір символів замінюється на «0».
- для двійкової системи числення набір символів записується як «0b».
замітка
Всі числа, задані в системах числення, відмінних від десяткової, при виведенні в браузер буде приведено до неї. Операції з числами здійснюються в тій системі, в якій вони задані, але користувачеві показуються в звичному всім вигляді.
Явне перетворення чисел
Тип результату обчислень може відрізнятися від очікуваного. При розподілі двох цілих чисел може вийти дробове число, якщо один операнд не ділиться на інший без залишку.
У PHP є можливість явно перевести число з цілого типу в дробовий або навпаки. Для цього перед виразом необхідно вказати мовну конструкцію (integer). якщо хочемо привести результат до цілого числа або (float), якщо хочемо отримати дробове число. При приведенні дрібного числа до цілого воно буде округлено в меншу сторону.
Дані конструкції впливають на рядки і логічний тип. Це можливо за рахунок вбудованого в інтерпретатор механізму неявного перетворення типів [3]. Якщо рядок починається з числа, то воно буде вилучено, приведено до необхідного типу, а інша частина рядка відкинута. Логічні значення перетворюються як «true => 1» і «false => 0».
Терміни, використані в статті
- Простий тип даних - це дані, які немає сенсу дробити. До них відносяться рядки, цілі числа, десяткові числа, булеві значення і null. Прості типи даних беруть участь в побудові складових (складних типів даних).
- Система числення - метод запису і подання чисел. Яскравим прикладом є римські цифри. У них кожне нове число записується знаком нового числа, наступного за повторенням попереднього. При цьому, якщо велика цифра стоїть перед меншою, то вони складаються.
- Перетворення типів - внутрішня операція інтерпретатора, яка дозволяє двом різним типам даних брати участь в загальному контексті програмної операції. Як приклад можна привести складання рядки «12» з числом 12. У результаті вийде число «24».
Поділіться в соцcетях: