PHP/base convert

من موسوعة حسوب
< PHP
مراجعة 17:21، 18 مارس 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (إضافة محتويات الصفحة.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

(PHP 4, PHP 5, PHP 7)

تحوِّل الدالة base_convert()‎ العدد من أساس (الأساس العشري أو الست عشري مثلًا) إلى أساس آخر معيَّن.

الوصف

string base_convert ( string $number , int $frombase , int $tobase )

تعيد هذه الدالة سلسلة نصيَّة للعدد number ذو الأساس frombase الممرَّر إلى الدالة بعد تحويله إلى الأساس tobase. يجب أن يتراوح مجال الأساس، سواءً للمعامل frombase أو المعامل tobase، بين 2 و 36 بحدٍّ أقصى.

تُمثَّل الأرقام المكوِّنة للعدد ذو الأساس الذي يزيد عن 10 بالأحرف a-z؛ أي أنَّ الأرقام من 0 إلى 9 تبقى نفسها وما يزاد عن ذلك يُمثَّل بأحرف. يمثِّل مثلًا الحرف a العدد 10، والحرف b العدد 11، وهكذا حتى الحرف z الذي يمثِّل العدد 35. لا تؤخذ حالة الأحرف بالحسبان، سواءً كبيرة (uppercase) أو صغيرة (lowercase)، عند تحويل أرقام العدد number.

تنبيه: قد تفقد الدالة base_convert()‎ بعض الدقة عند تحويلها أعدادًا كبيرة وذلك تبعًا للخصائص المتعلقة بنوع العدد العشري المستعمل فيما إذا كان من نوع double أو float. راجع صفحة الأعداد العشرية للمزيد من المعلومات حول هذا الأمر.

المعاملات

number

العدد المراد تحويله. سيُتجاهل أي عدد غير صالح دون ظهور أي تنبيه بذلك.

frombase

أساس العدد المراد تحويله.

tobase

الأساس الذي نريد تحويل العدد إليه.

القيم المعادة

يُعاد العدد number ممثَّلًا بالأساس tobase المراد تحويله إليه.

أمثلة

المثال 1: استعمال الدالة base_convert()‎

<?php
$hexadecimal = 'a37334';
echo base_convert($hexadecimal, 16, 2);
?>

سيُظهر المثال السابق النتيجة التالية:

101000110111001100110100

انظر أيضًا

  • الدالة intval()‎: استخلاص العدد الصحيح (integer) من متغير ما.

مصادر