الفرق بين المراجعتين لصفحة: «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.