الفرق بين المراجعتين لصفحة: «PHP/intval»
Kinan-mawed (نقاش | مساهمات) لا ملخص تعديل |
لا ملخص تعديل |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 2: | سطر 2: | ||
(PHP 4, PHP 5, PHP 7) | (PHP 4, PHP 5, PHP 7) | ||
تُعطي الدالة <code>intval()</code> قيمة من نوع عدد صحيح (integer) لمتغيّر ما. | تُعطي الدالة <code>intval()</code> قيمة من نوع [[PHP/integer|عدد صحيح]] (integer) لمتغيّر ما. | ||
== الوصف == | == الوصف == | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
int intval ( mixed $var [, int $base = 10 ] ) | int intval ( mixed $var [, int $base = 10 ] ) | ||
</syntaxhighlight>تُعطي قيمة من نوع [ | </syntaxhighlight>تُعطي قيمة من نوع [[PHP/integer|عدد صحيح]] للمتغيّر <code>var</code>، وذلك اعتمادًا على مُعامِل الأساس <code>base</code> للتحويل (القيمة الافتراضيّة هي الأساس 10 والتي تُحوِّل للنظام العشري). لا يجب استخدام الدالة <code>intval()</code> مع الكائنات، وينتج عن فعل ذلك خطأ من مستوى <code>E_NOTICE</code> وإعادة القيمة <code>1</code>. | ||
== المعاملات == | == المعاملات == | ||
سطر 18: | سطر 18: | ||
ملاحظة: إذا كانت قيمة الأساس تساوي الصّفر، يُحدَّد الأساس عبر نَسَق المُعامِل <code>var</code>: | ملاحظة: إذا كانت قيمة الأساس تساوي الصّفر، يُحدَّد الأساس عبر نَسَق المُعامِل <code>var</code>: | ||
* إن كانت السّلسلة النصّيّة تتضمن البادئة "0x" (أو "0X")، فسيُعدّ الأساس 16 (نظام ست عشري). | * إن كانت السّلسلة النصّيّة تتضمن البادئة <code>"0x"</code> (أو <code>"0X"</code>)، فسيُعدّ الأساس 16 (نظام ست عشري). | ||
* إن كانت السّلسلة النصّيّة تبدأ بالقيمة "0"، فسيُعدّ الأساس 8 (نظام ثماني). | * إن كانت السّلسلة النصّيّة تبدأ بالقيمة <code>"0"</code>، فسيُعدّ الأساس 8 (نظام ثماني). | ||
* إن لم تشمل السّلسلة أي من هذه الحالات فسيُعدّ الأساس 10 (نظام عشري). | * إن لم تشمل السّلسلة أي من هذه الحالات فسيُعدّ الأساس 10 (نظام عشري). | ||
سطر 25: | سطر 25: | ||
قيمة العدد الصّحيح للمُعامِل <code>var</code> عند النّجاح، أو <code>0</code> عند الفشل. تُعيد المصفوفات الفارغة القيمة <code>0</code> وغير الفارغة القيمة <code>1</code>. | قيمة العدد الصّحيح للمُعامِل <code>var</code> عند النّجاح، أو <code>0</code> عند الفشل. تُعيد المصفوفات الفارغة القيمة <code>0</code> وغير الفارغة القيمة <code>1</code>. | ||
تعتمد القيمة القصوى على النّظام، حيث تمتلك أنظمة 32 بت مجال أعظمي للعدد الصّحيح المؤشر signed من <code>-2147483648</code> إلى <code>2147483647</code>، فعلى سبيل المثال تُعيد الدالة <code>intval('1000000000000')</code> القيمة <code>2147483647</code> على هذه الأنظمة، أمّا القيمة القصوى لعدد صحيح مؤشر على أنظمة 64 بت هي <code>9223372036854775807</code>. | تعتمد القيمة القصوى على النّظام، حيث تمتلك أنظمة 32 بت مجال أعظمي للعدد الصّحيح المؤشر (signed) من <code>-2147483648</code> إلى <code>2147483647</code>، فعلى سبيل المثال تُعيد الدالة <code>intval('1000000000000')</code> القيمة <code>2147483647</code> على هذه الأنظمة، أمّا القيمة القصوى لعدد صحيح مؤشر على أنظمة 64 بت هي <code>9223372036854775807</code>. | ||
تُعيد السّلاسل النصّيّة القيمة <code>0</code> غالبًا على الرّغم من اعتماد ذلك على الأحرف الموجودة في أقصى يسار السّلسلة، تنطبق هنا القواعد الشّائعة في [https://wiki.hsoub.com/PHP/integer#.D8.A7.D9.84.D8.AA.D8.AD.D9.88.D9.8A.D9.84_.D8.A5.D9.84.D9.89_.D8.B9.D8.AF.D8.AF_.D8.B5.D8.AD.D9.8A.D8.AD قلب الأعداد الصّحيحة]. | تُعيد السّلاسل النصّيّة القيمة <code>0</code> غالبًا على الرّغم من اعتماد ذلك على الأحرف الموجودة في أقصى يسار السّلسلة، تنطبق هنا القواعد الشّائعة في [https://wiki.hsoub.com/PHP/integer#.D8.A7.D9.84.D8.AA.D8.AD.D9.88.D9.8A.D9.84_.D8.A5.D9.84.D9.89_.D8.B9.D8.AF.D8.AF_.D8.B5.D8.AD.D9.8A.D8.AD قلب الأعداد الصّحيحة]. | ||
سطر 68: | سطر 68: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* الدالة [ | * الدالة <code>[[PHP/boolval|boolval()]]</code>: الحصول على القيمة المنطقيّة (boolean) لمتغيّر ما. | ||
* الدالة [ | * الدالة <code>[[PHP/floatval|floatval()]]</code>: الحصول على قيمة من نوع عدد عشري (float) لمتغيّر ما. | ||
* الدالة [ | * الدالة <code>[[PHP/is numeric|is_numeric()]]</code>: معرفة إذا ما كان المتغيّر عددًا أو سلسلة نصّيّة عدديّة. | ||
* الدالة [ | * الدالة <code>[[PHP/strval|strval()]]</code>: الحصول على قيمة من نوع سلسلة نصّيّة (string) لمتغيّر ما. | ||
* الدالة [ | * الدالة <code>[[PHP/settype|settype()]]</code>: تعيين نوع متغيّر ما. | ||
* [ | * [[PHP/type juggling|التّعامل مع الأنواع في PHP]]. | ||
== مصادر == | == مصادر == | ||
* [http://php.net/manual/en/function.intval.php صفحة الدالة intval في توثيق PHP الرسمي]. | * [http://php.net/manual/en/function.intval.php صفحة الدالة intval في توثيق PHP الرسمي]. | ||
[[تصنيف:PHP]] | [[تصنيف:PHP]] | ||
[[تصنيف:PHP | [[تصنيف:PHP Function]] | ||
[[تصنيف:PHP Variable Handling]] |
المراجعة الحالية بتاريخ 11:23، 16 أبريل 2018
(PHP 4, PHP 5, PHP 7)
تُعطي الدالة intval()
قيمة من نوع عدد صحيح (integer) لمتغيّر ما.
الوصف
int intval ( mixed $var [, int $base = 10 ] )
تُعطي قيمة من نوع عدد صحيح للمتغيّر var
، وذلك اعتمادًا على مُعامِل الأساس base
للتحويل (القيمة الافتراضيّة هي الأساس 10 والتي تُحوِّل للنظام العشري). لا يجب استخدام الدالة intval()
مع الكائنات، وينتج عن فعل ذلك خطأ من مستوى E_NOTICE
وإعادة القيمة 1
.
المعاملات
var
القيمة العدديّة التي ستُحوَّل إلى عدد صحيح.
base
الأساس المُستخدَم للتحويل.
ملاحظة: إذا كانت قيمة الأساس تساوي الصّفر، يُحدَّد الأساس عبر نَسَق المُعامِل var
:
- إن كانت السّلسلة النصّيّة تتضمن البادئة
"0x"
(أو"0X"
)، فسيُعدّ الأساس 16 (نظام ست عشري). - إن كانت السّلسلة النصّيّة تبدأ بالقيمة
"0"
، فسيُعدّ الأساس 8 (نظام ثماني). - إن لم تشمل السّلسلة أي من هذه الحالات فسيُعدّ الأساس 10 (نظام عشري).
القيم المعادة
قيمة العدد الصّحيح للمُعامِل var
عند النّجاح، أو 0
عند الفشل. تُعيد المصفوفات الفارغة القيمة 0
وغير الفارغة القيمة 1
.
تعتمد القيمة القصوى على النّظام، حيث تمتلك أنظمة 32 بت مجال أعظمي للعدد الصّحيح المؤشر (signed) من -2147483648
إلى 2147483647
، فعلى سبيل المثال تُعيد الدالة intval('1000000000000')
القيمة 2147483647
على هذه الأنظمة، أمّا القيمة القصوى لعدد صحيح مؤشر على أنظمة 64 بت هي 9223372036854775807
.
تُعيد السّلاسل النصّيّة القيمة 0
غالبًا على الرّغم من اعتماد ذلك على الأحرف الموجودة في أقصى يسار السّلسلة، تنطبق هنا القواعد الشّائعة في قلب الأعداد الصّحيحة.
أمثلة
المثال 1: أمثلة على الدالة intval()
تستند الأمثلة التّالية إلى أنظمة 32 بت.
<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 1410065408
echo intval('1e10'); // 1
echo intval(0x1A); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
?>
ملاحظات
ليس لمُعامِل الأساس base
أي تأثير ما لم يكن المُعامِل var
سلسلةً نصّيّةً.
سجل التغييرات
الإصدار | الوصف |
---|---|
5.1.0 | رمي الخطأ E_NOTICE وإعادة القيمة 1 عند تمرير كائن للمُعامِل var
|
انظر أيضًا
- الدالة
boolval()
: الحصول على القيمة المنطقيّة (boolean) لمتغيّر ما. - الدالة
floatval()
: الحصول على قيمة من نوع عدد عشري (float) لمتغيّر ما. - الدالة
is_numeric()
: معرفة إذا ما كان المتغيّر عددًا أو سلسلة نصّيّة عدديّة. - الدالة
strval()
: الحصول على قيمة من نوع سلسلة نصّيّة (string) لمتغيّر ما. - الدالة
settype()
: تعيين نوع متغيّر ما. - التّعامل مع الأنواع في PHP.