أنواع في PHP
ويمكن للمتغير يجب أن يكون من نوع معين ولكن في أنواع PHP ليست محددة بشكل واضح، بدلا من ذلك يتم تحديد نوع المتغير من قبل في السياق الذي و متغير يتم استخدامه. وهذا يعني بالتالي أن المتغيرات تصبح نوع عندما يتم تعيينهم قيمة له نوع.
التلقائي نوع التحويل
PHP تلقائيا بتحويل من نوع واحد إلى آخر، والذي يمكن أن يسبب نتائج غير متوقعة. على سبيل المثال يمكن تحويل من كاذبة إلى سلسلة لها نتائج غير متوقعة.
value = false ; $ قيمة = كاذبة؛
" The value is $ value " ; صدى "القيمة دولار قيمة"؛
returns : The value is / / العوائد: إن القيمة
من أجل حل هذه الأنواع من المشاكل PHP يحتاج إلى تعليمات في كيفية التعامل مع المتغير.
value = false ; $ قيمة = كاذبة؛
" The value is " . ( int ) $ value ; صدى "وقيمة" (الباحث) $ قيمة.
returns : The value is 0 / / العوائد: إن القيمة 0
وكما ترون ان يلقي متغير تحتاج إلى استخدام مكان النوع الذي تريده للادلاء إلى أمام المتغير بين قوسين. وهذا ينطبق ثم هذا النوع من الزهر المتغير الراهن. لاحظ أنه يجب أن نكون حذرين بشأن ما يلقي لأنها يمكن أن يكون لها بعض النتائج غير المتوقعة. على سبيل المثال صب جزء إلى عدد صحيح وكسر تقريب إلى أقرب عدد صحيح.
تحويل سلسلة مع أرقام
هل تعلم أنك يمكن أن تضيف سنتانس والعدد معا لتشكيل رقم آخر؟ جيد في PHP يمكنك! Unfortunatley هذا يمكن أن يؤدي إلى نتائج غير متوقعة لذلك تحتاج إلى توخي الحذر كيفية التعامل مع هذا.
value = 1 + " 4.5 " ; $ قيمة = 1 + "4.5"؛
is float with the value 5.5 / / غير المصقول بقيمة 5،5
value = 1 + " tom " ; $ قيمة = 1 + "توم"؛
is integer with the value 1 / / هو عدد صحيح مع القيمة 1
value = 1 + " 2 Green Bottles " ; $ قيمة = 1 + "(2) زجاجات الأخضر"؛
is integer with the value 3 / / هو عدد صحيح مع القيمة 3
value = 1 + " Green Bottles 2 " ; $ قيمة = 1 + "زجاجات الأخضر 2"؛
is integer with the value 3 / / هو عدد صحيح مع القيمة 3
وكما ترون عند إضافة سلسلة إلى عدد إذا كان الجزء الأول من السلسلة هو رقم ثم يضاف هذا معا. يتم تجاهل أي أرقام أخرى. إذا قمت بإضافة السلسلة مع عدد عشري في ذلك إلى عدد صحيح والنتيجة هي تعويم. مرة أخرى على الطريق الصحيح لحل هذه المشكلة هو لكشف وأو يلقي المتغير إلى النوع الصحيح.
اكتشاف نوع من متغير
ويمكن تحديد نوع المتغير عن طريق استخدام وظائف دون تمرير ببساطة المتغير إلى الوظيفة المطلوبة وسيعود صحيح إذا كان من هذا النوع. هذا هو الاسلوب ل برمجة دفاعية .
var = " hello " ; $ فار = "مرحبا"؛
Returns true if a variable is a BOOLEAN / / عودة صحيح إذا كان المتغير هو BOOLEAN
$ var ) is_bool ($ فار)
Returns true if a variable is a STRING / / عودة صحيح إذا كان المتغير هو سلسلة
$ var ) is_string ($ فار)
Returns true if a variable is a NUMERIC STRING / / عودة صحيح إذا كان المتغير هو سلسلة NUMERIC
$ var ) is_numeric ($ فار)
Returns true if a variable is an INTEGER / / عودة صحيح إذا كان المتغير هو عدد صحيح
$ var ) is_int ($ فار)
Returns true if a variable is an ARRAY / / عودة صحيح إذا كان المتغير هو صفيف
$ var ) is_array ($ فار)
Returns true if a variable is an OBJECT / / عودة صحيح إذا كان المتغير هو كائن
$ var ) is_object ($ فار)
Returns true if a variable is NULL / / عودة صحيح إذا كان المتغير هو NULL
$ var ) is_null ($ فار)
Returns true if a variable is a FLOAT / / عودة صحيح إذا كان المتغير هو عدد عشري
$ var ) is_float ($ فار)
وهذا هو المهم كما تم التعرف مرة واحدة في نوع متغيرات خاص يمكنك أن تكون ثم معينة من تأثير أي العمليات التي تجرى على ذلك.
لا وقدمت تعليق.
كتبه الدباغ دومينيك
آخر تحديث: 2011/10/25 16:00:38