نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

التابع ‎‎.clone()‎‎ في jQuery

‎.clone( [withDataAndEvents ] )‎ القيمة المعادة كائن jQuery. الوصف يُستخدَم التابع ‎.clone()‎ في إنشاء نسخة عميقة (deep copy) من مجموعة العناصر المُطابِقة. ‎.clone( [withDataAndEvents ] )‎ أضيفت في الإصدار: 1.0. withDataAndEvents (القيمة الافتراضة: false) قيمة منطقيّة (Boolean)، وتُشير ما إذا كان يجب نسخ مُعالِجات الأحداث مع العناصر. بدءًا من إصدار jQuery 1.4 أصبحت بيانات العنصر تُنسَخ أيضًا. ‎.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )‎ أضيفت في الإصدار: 1.5. withDataAndEvents (القيمة الافتراضية: false) قيمة منطقيّة (Boolean)، وتُشير ما إذا كان يجب ...

استنساخ الكائنات في PHP

ليس من المحبّذ في كثير من الأحيان إنشاء نسخة طبق الأصل للكائن، وأفضل مثال على ذلك هو الحاجة لنسخ من التوابع البانية وذلك عند وجود كائن يمثل نافذة GTK ويحمل مصادر هذه النافذة، وعند إنشاء نسخة ثانية فإنّك قد ترغب في إنشاء نافذة جديدة تمتلك نفس الخصائص وأن يحمل الكائن الجديد الخصائص التابعة للنافذة الجديدة. من الأمثلة الأخرى أيضًا هو أن يحمل الكائن الذي تستخدمه مرجعًا إلى كائن آخر يستخدمه وعندما ترغب في إنشاء نسخة طبق الأصل للكائن الأب فستحتاج ...

استنساخ الكائنات في PHP

ليس من المحبّذ في كثير من الأحيان إنشاء نسخة طبق الأصل للكائن، وأفضل مثال على ذلك هو الحاجة لنسخ من التوابع البانية وذلك عند وجود كائن يمثل نافذة GTK ويحمل مصادر هذه النافذة، وعند إنشاء نسخة ثانية فإنّك قد ترغب في إنشاء نافذة جديدة تمتلك نفس الخصائص وأن يحمل الكائن الجديد الخصائص التابعة للنافذة الجديدة. من الأمثلة الأخرى أيضًا هو أن يحمل الكائن الذي تستخدمه مرجعًا إلى كائن آخر يستخدمه وعندما ترغب في إنشاء نسخة طبق الأصل للكائن الأب فستحتاج ...

أولوية العوامل في PHP

المقصود بأولوية العوامل هو تحديد مدى "قوة" ربط العامل لتعبيرين مع بعضهما البعض. فعلى سبيل المثال في التعبير: 1‎ + 5 * 3 يكون الجواب 16 وليس 18 لأن لعامل الضرب (*) الأولوية على عامل الجمع (+). يمكن استخدام الأقواس لتحديد الأولوية حسب الحاجة. فمثلًا: ناتج التعبير ‎(1 + 5) * 3 هو 18. عندما تتساوى العوامل في أولويتها فإن الخاصية التجميعية (associativity) هي التي تحدد كيفية تجميع العوامل. فمثلًا خاصية التجميع للعامل "-" يسارية، لذا فإن التعبير ‎1 - ...

أولوية العوامل في PHP

المقصود بأولوية العوامل هو تحديد مدى "قوة" ربط العامل لتعبيرين مع بعضهما البعض. فعلى سبيل المثال في التعبير: 1‎ + 5 * 3 يكون الجواب 16 وليس 18 لأن لعامل الضرب (*) الأولوية على عامل الجمع (+). يمكن استخدام الأقواس لتحديد الأولوية حسب الحاجة. فمثلًا: ناتج التعبير ‎(1 + 5) * 3 هو 18. عندما تتساوى العوامل في أولويتها فإن الخاصية التجميعية (associativity) هي التي تحدد كيفية تجميع العوامل. فمثلًا خاصية التجميع للعامل "-" يسارية، لذا فإن التعبير ‎1 - ...

التابع Object.clone في روبي

يُنتج التابع clone نسخةً سطحيةً (shallow copy) من الكائن المعطى. تُنسَخ متغيرات النسخة (instance variables) ولكن لا تُنسَخ الكائنات التي تشير إليها. يَنسَخ التابع clone حالة الكائن المجمدة (إلا إذا كان وسيط الكلمة المفتاحية freez: مساويًا للقيمة falsefalse) والتالفة (tainted). انظر أيضًا النقاش في صفحة التابع Object.dup. قد يمتلك هذا التابع سلوكًا  محدّدًا بالصنف (class-specific). إذا كان كذلك، سيُوثَّق السلوك تحت التابع ‎.initialize_copy من نفس الصنف. البنية العامة clone(freeze: true) → an_object المعاملات freeze وسيطُ مسمى (keyword argument) يأخذ القيمة ...

عوامل الإسناد في PHP

العامل "=" هو عامل الإسناد الأساسي. قد تظنّ للوهلة الأولى أن هذا العامل يعني "المساواة"، ولكنّه ليس كذلك. وظيفة هذا العامل هي ربط قيمة التعبير الموجود على جانبه الأيمن بالتعبير الموجود على الجانب الأيسر. يأخذ تعبير الإسناد القيمة المسندة، بمعنى أن قيمة "‎$a = 3" هي 3، ويتيح لنا هذا القيام بأمور معقدة، في المثال التالي تساوي قيمة المتغير ‎$a العدد 9، وأخذ المتغير ‎$b القيمة 4: <?php $a = ($b = 4) + 5; ?> إضافة إلى عامل الإسناد، هناك «عوامل ...

عوامل الإسناد في PHP

العامل "=" هو عامل الإسناد الأساسي. قد تظنّ للوهلة الأولى أن هذا العامل يعني "المساواة"، ولكنّه ليس كذلك. وظيفة هذا العامل هي ربط قيمة التعبير الموجود على جانبه الأيمن بالتعبير الموجود على الجانب الأيسر. يأخذ تعبير الإسناد القيمة المسندة، بمعنى أن قيمة "‎$a = 3" هي 3، ويتيح لنا هذا القيام بأمور معقدة، في المثال التالي تساوي قيمة المتغير ‎$a العدد 9، وأخذ المتغير ‎$b القيمة 4: <?php $a = ($b = 4) + 5; ?> إضافة إلى عامل الإسناد، هناك «عوامل ...

الدالة Enum.clone()‎ في Kotlin

ترمي الدالة clone()‎ استثناءً لأنّ ثوابت الصنف Enum لا يمكن أن تُنسَخ. تمنع هذه الدالة الأصناف ذات النوع Enum من أن ترِث من الصنف Cloneable. البنية العامة protected fun clone(): Any أمثلة يؤدي استعمال الدالة clone()‎ في المثال التالي إلى رمي استثناء: fun main(args: Array<String>) { val x = ColorEnum.Red val y = x.clone() // Error:(3, 14) Cannot access 'clone': it is protected in 'ColorEnum' } enum class ColorEnum(val colorCode: Int) { Red(2), ...

التابع Object.dup في روبي

ينتج التابع dup نسخةً سطحية (shallow copy) من الكائن. تُنسَخ متغيرات النسخة (instance variables) من الكائن، ولكن لا تُنسَخ الكائنات التي تشير إليها (referenced objects). يَنسخ التابع dup الحالة التالفة (tainted state) من الكائن. قد يملك هذا التابع سلوكًا محدَّدًا بالصنف (class-specific behavior)، إذا كان كذلك، سيُوثَّق هذا السلوك تحت التابع ‎.initialize_copy من الصنف نفسه. ما هو الفرق بين التابع clone والتابع dup؟ عمومًا، قد يمتلك التابعين clone و dup دلالاتٍ مختلفةٍ في الأصناف السليلة (descendant classes). لمَّا كان التابع ...

التابع Method.clone‎ في روبي

يعيد clone نسخة من التابع الذي استُدعي معه. البنية العامة clone → new_method‎ القيمة المعادة تعاد نسخة من التابع المعطى. أمثلة مثال على استخدام التابع clone‎: class A def foo return "bar" end end m = A.new.method(:foo) m.call # => "bar" n = m.clone.call # => "bar"‎ انظر أيضا التابع inspect: يعيد اسم التابع الأصلي. مصادر قسم التابع clone‎ في الصنف Method‎ في توثيق روبي الرسمي.

التابع UnboundMethod.clone‎ في روبي

يعيد التابع clone نسخة من هذا التابع. البنية العامة clone → new_method‎ القيمة المعادة تعاد نسخة من التابع المعطى. أمثلة مثال على استخدام التابع clone‎: class A def foo return "bar" end end m = A.new.method(:foo) m.call # => "bar" n = m.clone.call # => "bar"‎ انظر أيضًا التابع bind: يربط التابع الحر الذي استدعي معه بالكائن المعطى. مصادر قسم التابع clone‎ في الصنف UnboundMethod‎ في توثيق روبي الرسمي.

التابع Numeric.clone‎ في روبي

يعيد التابع clone الكائن الذي استُدعي معه. لا يمكن أن تكون قيمة المعامل freeze المُمرَّر إليه false. البنية العامة clone(freeze: true) → num‎ freeze قيمة منطقية تكون true دومًا ولا يمكن أن تكون false. القيمة المعادة يعاد الكائن المعطى نفسه بعد إنشاء نسخة منه. انظر أيضا التابع ceil: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد الذي استُدعي معه وبدقة محدَّدة. التابع coerce: إن كان العدد المُمرَّر إليه من نفس نوع العدد المستدعى معه، فستُعاد مصفوفة تحوي هذين ...

الصنف ‎‎CharCategory‎ في Kotlin

 الدوال الموروثة clone يطلق التابع clone()‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع Enum من أن ترِث من الصنفCloneable. compareTo تقارن الدالةcompareTo()‎ بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة 0 إن كانا متساويين، أو تعيد قيمة سلبية إن كانت قيمة العنصر الذي استُدعيت عبره أصغر من القيمة المُمرّرة، أو تعيد قيمة موجبة إن كانت قيمة العنصر الذي استُدعيت عبره أكبر من القيمة المُمرّرة . equals تبين الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي ...

الصنف ‎‎CharCategory‎ في Kotlin

 الدوال الموروثة clone يطلق التابع clone()‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع Enum من أن ترِث من الصنفCloneable. compareTo تقارن الدالةcompareTo()‎ بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة 0 إن كانا متساويين، أو تعيد قيمة سلبية إن كانت قيمة العنصر الذي استُدعيت عبره أصغر من القيمة المُمرّرة، أو تعيد قيمة موجبة إن كانت قيمة العنصر الذي استُدعيت عبره أكبر من القيمة المُمرّرة . equals تبين الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي ...

تعريف التوابع الدخيلة (Introduce Foreign Methods)

المشكلة الحاجة إلى تابعٍ غير موجودٍ في الصنف المساعد (utility class) ومن غير الممكن إضافته إلى ذلك الصنف. الحل إضافة التابع المطلوب إلى صنف العميل (client class) وتمرير كائنٍ (object) من الصنف المساعد إليه كوسيط (argument). مثال قبل إعادة التصميم يحتوي الصنف Report تابعًا باسم sendReport والذي يستخدم الصنف المساعد Date لإنشاء تاريخ اليوم التالي عبر إضافة القيمة 1 إلى اليوم الحالي، كما يلي: في لغة Java: class Report { //... void sendReport() { Date ...

الصنف ‎‎CharDirectionality‎ في Kotlin

الخاصيات الموروثة (Inherited Properties) name تعيد الخاصية name اسم الثابت من الكائن enum الذي استُدعيت عبره، كما سُمّيت أُثناء تعريف ذلك الكائن. ordinal تعيد الخاصية ordinal ترتيب الثابت من الكائن enum الذي استُدعيت عبره  enumeration constant‎)‎‎)، أي ترتيبها في تصريح الكائن enum،بحيث تأخذ المُركّبة الأولى العدد 0. الدوال الموروثة clone يطلق التابع clone()‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع Enum من أن ترِث من الصنفCloneable. compareTo تقارن الدالةcompareTo()‎ بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة 0 إن كانا متساويين، أو تعيد قيمة سلبية ...

الصنف ‎‎CharDirectionality‎ في Kotlin

الخاصيات الموروثة (Inherited Properties) name تعيد الخاصية name اسم الثابت من الكائن enum الذي استُدعيت عبره، كما سُمّيت أُثناء تعريف ذلك الكائن. ordinal تعيد الخاصية ordinal ترتيب الثابت من الكائن enum الذي استُدعيت عبره  enumeration constant‎)‎‎)، أي ترتيبها في تصريح الكائن enum،بحيث تأخذ المُركّبة الأولى العدد 0. الدوال الموروثة clone يطلق التابع clone()‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع Enum من أن ترِث من الصنفCloneable. compareTo تقارن الدالةcompareTo()‎ بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة 0 إن كانا متساويين، أو تعيد قيمة سلبية ...

الصنف ‎‎RegexOption‎ في Kotlin

يوفّر قيما مُرقّمة (enumeration values) لاستخدامها في تعيين خيارات التعابير النمطية. الخاصيات الموروثة (Inherited Properties) name تعيد الخاصية name اسم الثابت من الكائن enum الذي استُدعيت عبره، كما سُمّيت أُثناء تعريف ذلك الكائن. ordinal تعيد الخاصية ordinal ترتيب الثابت من الكائن enum الذي استُدعيت عبره  enumeration constant‎)‎‎)، أي ترتيبها في تصريح الكائن enum،بحيث تأخذ المُركّبة الأولى العدد 0. الدوال الموروثة clone يطلق التابع clone()‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع Enum من أن ترِث من الصنفCloneable. compareTo تقارن الدالةcompareTo()‎ بين قيمة العنصر الذي استُدعيت عبره ...

دمج التصريحات في TypeScript

مقدمة تصِف بعض المبادئ الفريدة الموجودة في لغة TypeScript شكل كائنات JavaScript على مستوى الأنواع. مبدأ دمج التصريحات (declaration merging) من المزايا التي تنفرد بها TypeScript. سيُساعد فهم هذا المبدأ على العمل مع شيفرة JavaScript الموجودة مسبقًا. إضافة إلى أنّها توفّر قدرة على إعمال مبادئ تجريد (abstraction concepts) أكثر تقدّمًا. نعني بدمج التصريحات في هذه الصفحة بأنّ المترجم يدمج تصريحين مختلفين لهما نفس الاسم في تعريف واحد. يمتلك هذا التعريف المندمج مزايا التصريحين الأصليّين. يُمكن دمج أي عدد من التصريحات، ...

الصنف ‎‎DeprecationLevel‎ في Kotlin

يحوي الصنف DeprecationLevel مستويات تصف درجات الإهمال (deprecation levels). enum class DeprecationLevel القيم القابلة للعد (Enum Values) WARNING تشير القيمة WARNING إلى وجود تحذير تولد نتيجة استعمال عنصر مهمل (deprecated element). ERROR تشير القيمة ERROR إلى وجود خطأٍ تولد نتيجة استعمال عنصر مهمل (deprecated element). HIDDEN تشير القيمة HIDDEN إلى أن العنصر المهمل (deprecated elements) غير متاح للاستخدام ضمن الشيفرة. الخاصيات الموروثة (Inherited Properties) name تمثِّل الخاصية Enum.name اسم الثابت المعرف في الكائن enum الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن. ordinal تمثل الخاصية Enum.ordinal ترتيب (ordinal) الثابت المعرف في ...

الصنف ‎‎DeprecationLevel‎ في Kotlin

يحوي الصنف DeprecationLevel مستويات تصف درجات الإهمال (deprecation levels). enum class DeprecationLevel القيم القابلة للعد (Enum Values) WARNING تشير القيمة WARNING إلى وجود تحذير تولد نتيجة استعمال عنصر مهمل (deprecated element). ERROR تشير القيمة ERROR إلى وجود خطأٍ تولد نتيجة استعمال عنصر مهمل (deprecated element). HIDDEN تشير القيمة HIDDEN إلى أن العنصر المهمل (deprecated elements) غير متاح للاستخدام ضمن الشيفرة. الخاصيات الموروثة (Inherited Properties) name تمثِّل الخاصية Enum.name اسم الثابت المعرف في الكائن enum الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن. ordinal تمثل الخاصية Enum.ordinal ترتيب (ordinal) الثابت المعرف في ...

التابع Object.class في روبي

يعيد التابع class صنف الكائن المعطى. يجب أن يُستدعى هذا التابع دائمًا مع مستقبل (receiver) صريح، إذ أنَّ class هي كلمةٌ محجوزةٌ في روبي. البنية العامة class → class القيم المعادة يعاد صنف الكائن المعطى المراد معرفة صنفه. أمثلة مثالٌ عن استخدام التابع class: 1.class #=> Integer self.class #=> Object انظر أيضًا التابع clone: يُنتج نسخةً سطحيةً من الكائن المعطى. التابع dup: ينتج نسخةً سطحية من الكائن. التابع tap: يُدخل الكائن المعطى إلى الكتلة ...

array_udiff()‎

(PHP 5, PHP 7) تحسب الدالة array_udiff()‎ الفرق بين المصفوفات باستخدام دالة callback مُعرّفة من المستخدم للمقارنة بين البيانات. الوصف array array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func) تحسب الدالة array_udiff()‎ الفرق بين المصفوفات باستخدام دالة callback مُعرّفة من المستخدم للمقارنة بين البيانات. وذلك على عكس الدالة array_diff()‎ التي تستخدم دالة داخلية لمقارنة البيانات. المعاملات array1 المصفوفة الأولى. array2 المصفوفة الثانية. value_compare_func دالة المقارنة المُعرفة من المستخدم. يجب أن تُعيد دالة المقارنة عددًا صحيحًا أقل ...

array_udiff()‎

(PHP 5, PHP 7) تحسب الدالة array_udiff()‎ الفرق بين المصفوفات باستخدام دالة callback مُعرّفة من المستخدم للمقارنة بين البيانات. الوصف array array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func) تحسب الدالة array_udiff()‎ الفرق بين المصفوفات باستخدام دالة callback مُعرّفة من المستخدم للمقارنة بين البيانات. وذلك على عكس الدالة array_diff()‎ التي تستخدم دالة داخلية لمقارنة البيانات. المعاملات array1 المصفوفة الأولى. array2 المصفوفة الثانية. value_compare_func دالة المقارنة المُعرفة من المستخدم. يجب أن تُعيد دالة المقارنة عددًا صحيحًا أقل ...

التابع Object.yield_self في روبي

يُدخل التابع yield_self الكائن المعطى إلى الكتلة (block) ويُعيد ناتج تنفيذ هذه الكتلة. البنية العامة ield_self {|x| block } → an_object المعاملات x الكائن المراد إدخاله إلى الكتلة. block الكتلة المراد تنفيذها على الكائن. القيم المعادة يُعاد الكائن الناتج عن تنفيذ الكتلة block بعد تمرير الكائن المعطى إليها. أمثلة: مثالٌ عن استخدام التابع yield_self: "my string".yield_self {|s| s.upcase } #=> "MY STRING" 3.next.yield_self {|x| x**x }.to_s #=> "256" انظر أيضًا التابع class: يعيد ...

التابع Object.tap في روبي

يُدخل التابع tap الكائن المعطى إلى الكتلة (block)، ثم يعيده. الهدف الأساسي من هذا التابع هو "التداخل في" سلسلة التوابع، بهدف تنفيذ عملياتٍ على النتائج الوسطية التي تنتج خلال تنفيذ السلسلة. البنية العامة tap {|x| block } → obj المعاملات x الكائن المراد إدخاله إلى الكتلة. block الكتلة المراد تنفيذها على الكائن. القيم المعادة يُعاد الكائن نفسه. أمثلة مثالٌ عن استخدام التابع tap: (1..10) ...

التابع Numeric.coerce‎ في روبي

إن كان العدد المُمرَّر إلى التابع numeric من نفس نوع العدد الذي استُدعي معه، فسيعيد مصفوفة تحوي هذين العددين. خلاف ذلك، سيحول هذين العددين إلى النوع Float ويعيدهما في مصفوفة. تُستخدَم هذه الآلية من التحويل للتعامل مع العمليات العددية التي تكون أنواع الأعداد فيها مختلفة؛ الغرض الأساسي من هذا التابع هو إيجاد نوعٍ متوافق بين عددين أو تحويلهما إلى النوع نفسه. البنية العامة coerce(numeric) → array‎ المعاملات numeric‎ العدد الثاني الذي سيُتحقق من مطابقة نوعه للعدد المعطى. القيمة ...

التابع UnboundMethod.bind‎ في روبي

يربط التابع bind التابعَ الحرَّ الذي استُدعي معه بالكائن الذي مُرِّر إليه. إذا كان Klass هو الصنف الذي أُنشئ منه التابع الحر، فيجب أن يساوي التعبير obj.kind_of?(Klass)‎ القيمة true. البنية العامة bind(obj) → method‎ المعاملات obj‎ كائن يراد ربطه بالتابع الحر. القيمة المعادة يعاد التابع الناتج عن ربط التابع الحر بالكائن obj. أمثلة مثال على استخدام التابع bind‎: class A def test puts "In test, class = #{self.class}" end end class B < A end class C < B end um ...

for في PHP

(PHP 4, PHP 5, PHP 7) تعدّ حلقات for النوع الأكثر تعقيدًا من الحلقات في PHP، وهي مشابهة لنظيرتها في لغة C، وتأخذ الصيغة التالية: for (expr1; expr2; expr3) statement ينفّذ التعبير expr1 مرة واحدة دون قيد أو شرط في بداية الحلقة، وينفّذ التعبير expr2 في بداية كل دورة، فإن كانت النتيجة هي TRUE فتستمر الحلقة في عملها وتنفّذ العبارات المضمّنة فيها، أما إن كانت النتيجة هي FALSE فتتوقف الحلقة عن العمل، أما التعبير expr3 فينفّذ في ...

if في PHP

(PHP 4, PHP 5, PHP 7) بنية if هي واحدة من أهم الميزات المتوفّرة في العديد من اللغات البرمجية، ومن ضمنها PHP. إذ تتيح تنفيذ أجزاء من الشيفرة اعتمادًا على شروط معينة. تعتمد PHP بنية if المعتمدة في لغة C: if (expr) statement تُحسب التعابير -كما ورد في الفصل المتعلّق بالتعابير في هذا الدليل- إلى قيمة منطقية (Boolean)، فإن كانت نتيجة الحساب هي TRUE تنفذ PHP العبارة، وإن كانت نتيجة الحساب هي FALSE تتجاهل اللغة ذلك التعبير. يمكن الحصول ...

for في PHP

(PHP 4, PHP 5, PHP 7) تعدّ حلقات for النوع الأكثر تعقيدًا من الحلقات في PHP، وهي مشابهة لنظيرتها في لغة C، وتأخذ الصيغة التالية: for (expr1; expr2; expr3) statement ينفّذ التعبير expr1 مرة واحدة دون قيد أو شرط في بداية الحلقة، وينفّذ التعبير expr2 في بداية كل دورة، فإن كانت النتيجة هي TRUE فتستمر الحلقة في عملها وتنفّذ العبارات المضمّنة فيها، أما إن كانت النتيجة هي FALSE فتتوقف الحلقة عن العمل، أما التعبير expr3 فينفّذ في ...

if في PHP

(PHP 4, PHP 5, PHP 7) بنية if هي واحدة من أهم الميزات المتوفّرة في العديد من اللغات البرمجية، ومن ضمنها PHP. إذ تتيح تنفيذ أجزاء من الشيفرة اعتمادًا على شروط معينة. تعتمد PHP بنية if المعتمدة في لغة C: if (expr) statement تُحسب التعابير -كما ورد في الفصل المتعلّق بالتعابير في هذا الدليل- إلى قيمة منطقية (Boolean)، فإن كانت نتيجة الحساب هي TRUE تنفذ PHP العبارة، وإن كانت نتيجة الحساب هي FALSE تتجاهل اللغة ذلك التعبير. يمكن الحصول ...

الصنف ‎‎Enum‎ في Kotlin

يعدُّ الصنف Enum الصنف الأساس لكل الأصناف القابلة للعد (enum classes). إن أردت الاطلاع على معلومات أوسع حول هذه الأصناف، فاقرأ هذا المرجع. abstract class Enum<E : Enum<E>> : Comparable<E> (source) الدوال البانية (Constructors) <init> يعدُّ الصنف Enum الصنف الأساس لكل أصناف الترقيم (enum classes). الخاصيات name تمثل اسم الثابت المعرف في الكائن enum الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن. ordinal تمثل ترتيب (ordinal) الثابت المعرف في الكائن enum الذي استُدعي معها. الدوال clone ترمي هذه الدالة استثناءً لأنّ ثوابت الصنف Enum لا يمكن أن ...

التابع Method.curry‎ في روبي

يعيد curry كائن proc مُجزّء (curried proc) انطلاقًا من التابع الذي استُدعي معه. عندما يكون عدد الوسائط الممررة إلى الكتلة proc أقل من رتبة (arity) التابع، فستعاد كتلة proc مجزءة أخرى. ولن يُستدعى التابع فعليًا إلا عندما يتم توفير الوسائط الكافية لتوقيع التابع (method signature). يجب توفير الوسيط الاختياري arity إن أردت تجزئة (currying) التوابع التي تقبل عددًا متغيرًا من الوسائط لتحديد عدد الوسائط المطلوبة قبل استدعاء التابع فعليًا. البنية العامة curry → proc curry(arity) → proc‎ المعاملات arity‎ في ...

الصنف ‎‎Enum‎ في Kotlin

يعدُّ الصنف Enum الصنف الأساس لكل الأصناف القابلة للعد (enum classes). إن أردت الاطلاع على معلومات أوسع حول هذه الأصناف، فاقرأ هذا المرجع. abstract class Enum<E : Enum<E>> : Comparable<E> (source) الدوال البانية (Constructors) <init> يعدُّ الصنف Enum الصنف الأساس لكل أصناف الترقيم (enum classes). الخاصيات name تمثل اسم الثابت المعرف في الكائن enum الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن. ordinal تمثل ترتيب (ordinal) الثابت المعرف في الكائن enum الذي استُدعي معها. الدوال clone ترمي هذه الدالة استثناءً لأنّ ثوابت الصنف Enum لا يمكن أن ...

switch في PHP

(PHP 4, PHP 5, PHP 7) تشبه عبارة switch سلسلةً من عبارات if مطبّقة على نفس التعبير. قد تحتاج في بعض الأحيان إلى مقارنة نفس المتغير (أو التعبير) مع قيم مختلفة (حالات cases)، وتنفيذ شيفرة مختلفة بالاعتماد على ذلك، وهذه هي وظيفة عبارة switch. ملاحظة: بخلاف بعض اللغات البرمجية، يمكن استخدام عبارة continue في switch وهي تعمل عمل العبارة break. إن كنت تستخدم switch داخل حلقة وأردت الانتقال إلى الدورة التالية في الحلقة التكرارية الخارجية، استخدم continue 2. ملاحظة: تؤدي ...

include في PHP

(PHP 4, PHP 5, PHP 7) تعمل عبارة include على تضمين ومعالجة الملف المحدّد. ينطبق التوثيق التالي على عبارة require. تُضمّن الملفات بالاعتماد على المسار المعطى للعبارة، وفي حال عدم تحديد المسار، تأخذ include المسار المحدد في include_path. إن لم يكن الملف موجودًا في include_path ستتحقّق include في المجلّد الذي يحتوي على الشيفرة التي أجرت الاستدعاء وفي مجلد العمل الحالي قبل أن تطلق خطأً. تطلق بنية include تحذيرًا إن لم تتمكن من العثور على الملف، وتختلف في ذلك عن require ...

break في PHP

(PHP 4, PHP 5, PHP 7) تنهي break تنفيذ حلقات for أو foreach أو while أو do-while أو بنية switch. تأخذ break معاملًا عدديًا اختياريًا يُحدّد من خلاله عدد البنى المتداخلة التي‏ يجب إيقاف تنفيذها. القيمة الافتراضية لهذا المعامل هي 1، والذي يعني إيقاف تنفيذ البنية الحالية فقط. <?php $arr = array('one', 'two', 'three', 'four', 'stop', 'five'); while (list(, $val) = each($arr)) { if ($val == 'stop') { break; /* يمكن أيضًا كتابة /* ...

require في PHP

(PHP 4, PHP 5, PHP 7) العبارة require مطابقة للعبارة include باستثناء أنّها تطلق خطأ من نوع E_COMPLE_ERROR في حال فشلها في جلب الملف. وبعبارة أخرى فإنها ستوقف عمل الشيفرة تمامًا، في حين أنّ include تطلق تحذيرًا (E_WARNING) والذي لا يؤدي إلى إيقاف الشيفرة عن العمل. راجع توثيق include لمعرفة طريقة عملها. مصادر صفحة require في توثيق PHP الرسمي.

المتغيرات في PHP

يكون التعبير عن المتغيرات في PHP باستخدام علامة $ متبوعة باسم المتغير والذي يكون حساسًا لحالة الأحرف. تتبع المتغيرات نفس القواعد المتبّعة للتسمية في PHP. إذ يبدأ اسم المتغير الصحيح بحرف أو بشرطة سفلية متبوعة بعدد غير محدد من الحروف أو الأرقام أو الشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expression) للتعبير عن اسم المتغير فسيكون كالتالي: '‎‎[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*‎‎'. ملاحظة: في هذا الدليل الحرف هو كل ما يقع ضمن النطاق a-z و A-Z والبايتات من 127 إلى 255 (0x7f-0xff). ملاحظة: ...

الثوابت في PHP

الثابت هو معرّف (اسم) لقيمة بسيطة، وكما هو واضح من الاسم فإنّ هذه القيمة غير قابلة للتبديل أثناء تنفيذ الشيفرة (باستثناء الثوابت السحرية والتي لا تعدّ ثوابت في الواقع). الثابت حساس لحالة الأحرف ومن الشائع استخدام الأحرف الكبيرة في تسمية الثوابت. تتبع الثوابت نفس القواعد المتّبعة للتسمية في PHP، فاسم الثابت الصحيح يبدأ بحرف أو بشرطة سفلية، متبوعًا بعدد غير محدّد من الأحرف والأرقام والشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expressions) للتعبير عن اسم المتغير فسيكون كالتالي: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* ...

continue في PHP

(PHP 4, PHP 5, PHP 7) تستخدم continue في الحلقات التكرارية لتجاوز ما يأتي بعدها في الحلقة التكرارية والاستمرار في تنفيذ الشيفرة حسب الشرط المعتمد في الحلقة ثم الانتقال إلى بداية الدورة التالية. تأخذ continue معاملًا عدديًّا اختياريًا يمكن من خلاله تحديد عدد الحلقات التكرارية المحيطة بها والتي يجب تجاوزها إلى النهاية. القيمة الافتراضية هي 1 والتي تعني الانتقال إلى نهاية الحلقة الحالية. ملاحظة: تعدّ عبارة switch في PHP من الحلقات التكرارية عند الحديث عن continue. تسلك continue سلوك break ...

العوامل في PHP

يأخذ العامل (operator) قيمة واحدة أو أكثر (أو تعابير حسب اصطلاحات البرمجة) ويعطي قيمة أخرى (بحيث تتحول البنية نفسها إلى تعبير). يمكن تصنيف العوامل بحسب عدد القيم التي تأخذها، فالعوامل الأحادية Uanry تأخذ قيمة واحدة فقط مثل العامل (!) (معامل النفي المنطقي) أو (++) (معامل الزيادة). أما العوامل الثنائية فتأخذ قيمتين، وخير مثال عليها هو العوامل الحسابية المعروفة (+) الجمع، و (-) الطرح، إضافة إلى غالبية العوامل التي تقدّمها لغة PHP. وأخيرًا هناك معامل ثلاثي وحيد وهو ? : ويأخذ قيمًا ثلاثة، ...

declare في PHP

(PHP 4, PHP 5, PHP 7) تستخدم بنية declare لتعيين موجّهات التنفيذ (execution directives) لكتلة من الشيفرة، وصيغة declare مشابهة لبنى التحكم في تدفق الشيفرة. الوصف declare (directive) statement يتيح الموجه تعيين سلوك كتلة (block). يمكن للغة في الوقت الحاضر أن تتعرف على ثلاثة أنواع من الموجهات فقط: موجه ticks (للمزيد من المعلومات حول موجه ticks انظر أدناه)، وموجه encoding (للمزيد من المعلومات حول موجه encoding انظر أدناه)، وموجه strict_types (للمزيد من المعلومات راجع قسم strict في ...

return في PHP

(PHP 4, PHP 5, PHP 7) تعيد تنفيذ البرنامج إلى الوحدة التي قامت بالاستدعاء، وسيستمر التنفيذ إلى التعبير الذي يلي تعبير الاستدعاء. إذا استدعيت عبارة return داخل الدالة فإنّها ستنهي تنفيذ الدالة على الفور وتعيد معاملها كقيمة لاستدعاء الدالة. تنهي return أيضًا تنفيذ عبارة eval()‎ أو ملف الشيفرة. إن استدعيت عبارة return من النطاق العام (global scope) فإنها تنهي عملية تنفيذ ذلك الملف. وإن كان ملف الشيفرة مضمنًا (included) أو مطلوبًا (required)، فإن التحكّم يعود إلى الملف المستدعي مرة أخرى. ...

المصفوفات في PHP

المصفوفة في PHP هي خريطة (map) مرتّبة، والخريطة هي نوع ترتبط فيه القيم مع المفاتيح، ولها استخدامات عديدة، فيمكن التعامل معها كمصفوفة أو قائمة (vector) أو جدول hash (نوع من الخرائط) أو قاموس (dictionary) أو مجموعة (collection) أو مكدس (stack) أو طابور (queue) وغير ذلك، حتى أن قيم المصفوفة يمكن أن تكون مصفوفات أخرى، ممّا يسمح بإنشاء مصفوفات متعددة الأبعاد. لن نشرح جميع هذه الأنواع في هذا التوثيق، لكن ستجد مثالًا واحدًا على الأقل لكلٍ منها. الصياغة إنشاء المصفوفات باستخدام ...

foreach في PHP

(PHP 4, PHP 5, PHP 7) تقدّم بنية foreach طريقة سهلة للتنقل بين عناصر المصفوفات، وتعمل هذه البنية مع المصفوفات والكائنات فقط، ويؤدي استخدامها مع متغير ذي نوع بيانات مختلف أو متغير غير مهيئ إلى إطلاق خطأ. لهذه البنية صيغتان: foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement تنتقل الصيغة الأولى عبر المصفوفة بحسب التعبير المقدّم إليها (array_expression). وفي كل دورة تسند اللغة قيمة العنصر الحالي إلى المتغير ‎$value ويتقدّم المؤشر ...

الكائنات في PHP

تهيئة الكائن لإنشاء كائن جديد، استخدم التعبير البرمجي new لتهيئة كائن من صنفٍ ما (class): <?php class foo { function do_foo() { echo "Doing foo."; } } $bar = new foo; $bar->do_foo(); ?> راجع فصل الأصناف والكائنات (Classes and Objects) للمزيد من المعلومات. التحويل إلى كائن إذا حوّلنا كائنًا إلى كائنٍ آخر فلن يُعدَّل فيه شيء، أما إذا حولنا قيمةً من أي نوعٍ آخر إلى كائن، فستُنشَأ نسخةً جديدةً من ...

goto في PHP

(PHP 5 >= 5.3.0, PHP 7) يمكن استخدام عامل goto للانتقال إلى قسم آخر في البرنامج، وتعيّن نقطة الانتقال هذه بواسطة وسم متبوعٍ بنقطتين رأسيتين (:)، وتكون طريقة الانتقال باستخدام العامل goto متبوعًا بالوسم المراد الانتقال إليه. هناك بعض القيود المفروضة على استخدام goto، إذ يجب أن يكون الوسم الهدف في نفس الملف ونفس السياق (context)، بمعنى أنّه لا يمكن الانتقال من داخل الدالة أو التابع إلى الخارج كما لا يمكن الانتقال إلى الداخل. لا يمكن أيضًا الانتقال إلى أي ...

continue في PHP

(PHP 4, PHP 5, PHP 7) تستخدم continue في الحلقات التكرارية لتجاوز ما يأتي بعدها في الحلقة التكرارية والاستمرار في تنفيذ الشيفرة حسب الشرط المعتمد في الحلقة ثم الانتقال إلى بداية الدورة التالية. تأخذ continue معاملًا عدديًّا اختياريًا يمكن من خلاله تحديد عدد الحلقات التكرارية المحيطة بها والتي يجب تجاوزها إلى النهاية. القيمة الافتراضية هي 1 والتي تعني الانتقال إلى نهاية الحلقة الحالية. ملاحظة: تعدّ عبارة switch في PHP من الحلقات التكرارية عند الحديث عن continue. تسلك continue سلوك break ...

require_once في PHP

(PHP 4, PHP 5, PHP 7) عبارة require_once مطابقة للعبارة require باستثناء أن PHP ستتحقق مما إذا كان الملف مضمّنًا أم لا، وذلك لتجنّب تضمينه (require) مرة أخرى. راجع توثيق include_once للمزيد من المعلومات حول طريقة عمل ‎_once، والفرق بينها وبين الدوال التي لا تلحق بها هذه اللاحقة. مصادر صفحة require_once في توثيق PHP الرسمي.

الأخطاء في PHP

مقدمة لا مفرّ من الوقوع في الأخطاء مهما كنّا حريصين في كتابة الشيفرة. تبلغ PHP عن الأخطاء والتحذيرات والملاحظات التي تحدث بسبب المشاكل الحاصلة في وقت التشغيل، وتصبح عملية تنقيح الأخطاء (Debugging) أكثر سهولة عند معرفة كيفية الكشف عن هذه الأخطاء والتعامل معها. الأساسيات تبلّغ PHP عن الأخطاء الناجمة عن عدد من الأخطاء الداخلية، ويمكن الاستفادة من ذلك في الكشف عن عدد من الحالات المختلفة ويمكن عرضها و/أو تسجيلها حسب الحاجة. تقسم الأخطاء في PHP إلى أنواع مختلفة، وهناك قائمة ...

require في PHP

(PHP 4, PHP 5, PHP 7) العبارة require مطابقة للعبارة include باستثناء أنّها تطلق خطأ من نوع E_COMPLE_ERROR في حال فشلها في جلب الملف. وبعبارة أخرى فإنها ستوقف عمل الشيفرة تمامًا، في حين أنّ include تطلق تحذيرًا (E_WARNING) والذي لا يؤدي إلى إيقاف الشيفرة عن العمل. راجع توثيق include لمعرفة طريقة عملها. مصادر صفحة require في توثيق PHP الرسمي.

المولدات في PHP

تقدّم المولِّدات (Generators) طريقة سهلة لاستخدام المكرِّرات (Iterators) البسيطة دون الدخول في تعقيدات استخدام صنف يطبّق الواجهة Iterator. تتيح المولِّدات كتابة شيفرة تستخدم foreach لمرور على مجموعة من البيانات دون الحاجة إلى بناء مصفوفة في الذاكرة مما قد يؤدي إلى تجاوز حدود الذاكرة، أو يحتاج إلى وقت معالجة طويل لإنشائه. بدلًا من ذلك، يمكن كتابة دالة مولِّدة وهي دالة مشابهة للدوال الاعتيادية باستثناء أنّها لا تعيد النتيجة مرة واحدة بل تعيد العدد المطلوب من النتائج لغرض تقديم القيم التي يتم ...

else في PHP

(PHP 4, PHP 5, PHP 7) قد ترغب في كثير من الأحيان تنفيذ عبارة معينة عند تحقق شرط معين وتنفيذ عبارة أخرى في حال عدم تحقق الشرط. هنا يأتي دور else، والتي تعمل على تمديد عبارة if لتنفيذ عبارة أخرى في حال أدّى حساب عبارة if إلى النتيجة FALSE. على سبيل المثال تطبع الشيفرة التالية عبارة 'a is greater than b' إن كان المتغير ‎$a أكبر من المتغير ‎$b، وتطبع العبارة 'a is NOT greater than b' إن كان ‎$a ...

foreach في PHP

(PHP 4, PHP 5, PHP 7) تقدّم بنية foreach طريقة سهلة للتنقل بين عناصر المصفوفات، وتعمل هذه البنية مع المصفوفات والكائنات فقط، ويؤدي استخدامها مع متغير ذي نوع بيانات مختلف أو متغير غير مهيئ إلى إطلاق خطأ. لهذه البنية صيغتان: foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement تنتقل الصيغة الأولى عبر المصفوفة بحسب التعبير المقدّم إليها (array_expression). وفي كل دورة تسند اللغة قيمة العنصر الحالي إلى المتغير ‎$value ويتقدّم المؤشر ...

PHP/Function

تحتوي لغة PHP على عددٍ كبير من الدوال القياسية المُضمَّنة في اللغة. دوال المصفوفات الدوال الرياضية دوال معالجة النصوص

المراجع في PHP

المراجع (references) في PHP هي وسيلة للوصول إلى محتوى المتغير نفسه باستخدام أسماء مختلفة، والمراجع لا تشبه المؤشّرات في لغة C، فعلى سبيل المثال لا يمكن إجراء العمليات الحسابية الخاصّة بالمؤشّرات على المراجع، وهي ليست عناوين ذاكرة حقيقية، وهكذا. راجع الصفحة "ما هو غير المقصود بالمراجع" للمزيد من المعلومات. المراجع هي أسماء بديلة رمزية مجدولة (Symbol table aliases). لاحظ أنّ اسم المتغير ومحتواه مختلفان في لغة PHP؛ لهذا يمكن لنفس المحتوى أن يحمل اسمين مختلفين. وأقرب مثال على ذلك هو ...

include_once في PHP

(PHP 4, PHP 5, PHP 7) تُضمِّن العبارة include_once الملفّ المحدد وتعالجه أثناء تنفيذ الشيفرة. هذه السلوك مشابه لعبارة include والفرق الوحيد هنا هو إن كانت شيفرة ذلك الملف مضمّنة من قبل فإنّها لن تُضمِّنَه مرة أخرى، وترجع include_once القيمة TRUE، وهذا السلوك متوقع من اسم العبارة. يمكن استخدام include_once في الحالات التي يمكن لنفس الملف أن يُضمَّن ويُعالَج لأكثر من مرة خلال مرحلة معيّنة من مراحل تنفيذ الشيفرة، وفي هذه الحالة يمكن تجنب بعض المشاكل مثل إعادة تعريف الدوال ...

الكائنات في PHP

تهيئة الكائن لإنشاء كائن جديد، استخدم التعبير البرمجي new لتهيئة كائن من صنفٍ ما (class): <?php class foo { function do_foo() { echo "Doing foo."; } } $bar = new foo; $bar->do_foo(); ?> راجع فصل الأصناف والكائنات (Classes and Objects) للمزيد من المعلومات. التحويل إلى كائن إذا حوّلنا كائنًا إلى كائنٍ آخر فلن يُعدَّل فيه شيء، أما إذا حولنا قيمةً من أي نوعٍ آخر إلى كائن، فستُنشَأ نسخةً جديدةً من ...

include_once في PHP

(PHP 4, PHP 5, PHP 7) تُضمِّن العبارة include_once الملفّ المحدد وتعالجه أثناء تنفيذ الشيفرة. هذه السلوك مشابه لعبارة include والفرق الوحيد هنا هو إن كانت شيفرة ذلك الملف مضمّنة من قبل فإنّها لن تُضمِّنَه مرة أخرى، وترجع include_once القيمة TRUE، وهذا السلوك متوقع من اسم العبارة. يمكن استخدام include_once في الحالات التي يمكن لنفس الملف أن يُضمَّن ويُعالَج لأكثر من مرة خلال مرحلة معيّنة من مراحل تنفيذ الشيفرة، وفي هذه الحالة يمكن تجنب بعض المشاكل مثل إعادة تعريف الدوال ...

require_once في PHP

(PHP 4, PHP 5, PHP 7) عبارة require_once مطابقة للعبارة require باستثناء أن PHP ستتحقق مما إذا كان الملف مضمّنًا أم لا، وذلك لتجنّب تضمينه (require) مرة أخرى. راجع توثيق include_once للمزيد من المعلومات حول طريقة عمل ‎_once، والفرق بينها وبين الدوال التي لا تلحق بها هذه اللاحقة. مصادر صفحة require_once في توثيق PHP الرسمي.

المولدات في PHP

تقدّم المولِّدات (Generators) طريقة سهلة لاستخدام المكرِّرات (Iterators) البسيطة دون الدخول في تعقيدات استخدام صنف يطبّق الواجهة Iterator. تتيح المولِّدات كتابة شيفرة تستخدم foreach لمرور على مجموعة من البيانات دون الحاجة إلى بناء مصفوفة في الذاكرة مما قد يؤدي إلى تجاوز حدود الذاكرة، أو يحتاج إلى وقت معالجة طويل لإنشائه. بدلًا من ذلك، يمكن كتابة دالة مولِّدة وهي دالة مشابهة للدوال الاعتيادية باستثناء أنّها لا تعيد النتيجة مرة واحدة بل تعيد العدد المطلوب من النتائج لغرض تقديم القيم التي يتم ...

elseif في PHP

(PHP 4, PHP 5, PHP 7) كما هو واضح من الاسم فإنّ هذه العبارة هي مزيج من if و else، وكما هو الحال مع else يمكن توسيع عبارة if لتنفيذ عبارة أخرى في حال كانت نتيجة تعبير if هي FALSE. ولكن، على العكس من else، فإن elseif تنفذ ذلك التعبير البديل في حالة واحدة فقط وهي أن تكون نتيجة التعبير الشرطي المتعلق بعبارة elseif هي TRUE. فعلى سبيل المثال تعرض الشيفرة التالية عبارة 'a is bigger than b'، أو 'a ...

المصفوفات في PHP

المصفوفة في PHP هي خريطة (map) مرتّبة، والخريطة هي نوع ترتبط فيه القيم مع المفاتيح، ولها استخدامات عديدة، فيمكن التعامل معها كمصفوفة أو قائمة (vector) أو جدول hash (نوع من الخرائط) أو قاموس (dictionary) أو مجموعة (collection) أو مكدس (stack) أو طابور (queue) وغير ذلك، حتى أن قيم المصفوفة يمكن أن تكون مصفوفات أخرى، ممّا يسمح بإنشاء مصفوفات متعددة الأبعاد. لن نشرح جميع هذه الأنواع في هذا التوثيق، لكن ستجد مثالًا واحدًا على الأقل لكلٍ منها. الصياغة إنشاء المصفوفات باستخدام ...

goto في PHP

(PHP 5 >= 5.3.0, PHP 7) يمكن استخدام عامل goto للانتقال إلى قسم آخر في البرنامج، وتعيّن نقطة الانتقال هذه بواسطة وسم متبوعٍ بنقطتين رأسيتين (:)، وتكون طريقة الانتقال باستخدام العامل goto متبوعًا بالوسم المراد الانتقال إليه. هناك بعض القيود المفروضة على استخدام goto، إذ يجب أن يكون الوسم الهدف في نفس الملف ونفس السياق (context)، بمعنى أنّه لا يمكن الانتقال من داخل الدالة أو التابع إلى الخارج كما لا يمكن الانتقال إلى الداخل. لا يمكن أيضًا الانتقال إلى أي ...

الموارد في PHP

المورد هو متغير خاص يحمل مرجعيةً إلى مورد خارجي، تُنشَأ الموارد وتُستخدَم باستعمال دوال خاصة، اطلع على الملحق للحصول على قائمة تضم جميع الدوال مع نوع المورد المناسب. اطلع على الدالة get_resource_type()‎ أيضًا. التحويل إلى مورد لا يمكن تحويل القيم من الأنواع الأخرى إلى موارد، فهذه المتغيرات تحمل مقابض (handles) خاصة لفتح الملفات، اتصالات قاعدة البيانات، مناطق الصورة … تحرير الموارد بفضل نظام عدّ المراجع (reference-counting system) الموجود في محرك Zend، ستُكتَشَف الموارد التي لا تمتلك مرجع إليها تلقائيًا، ,وتُحرَّر ...

require في PHP

(PHP 4, PHP 5, PHP 7) العبارة require مطابقة للعبارة include باستثناء أنّها تطلق خطأ من نوع E_COMPLE_ERROR في حال فشلها في جلب الملف. وبعبارة أخرى فإنها ستوقف عمل الشيفرة تمامًا، في حين أنّ include تطلق تحذيرًا (E_WARNING) والذي لا يؤدي إلى إيقاف الشيفرة عن العمل. راجع توثيق include لمعرفة طريقة عملها. مصادر صفحة require في توثيق PHP الرسمي.

المصفوفات في PHP

تسمح لك هذه الدوال بالتعامل مع المصفوفات وتعديلها بطرائق عديدة. المصفوفات عنصر أساسي لتخزين وإدارة والتعامل مع مجموعاتٍ من المتغيرات. تدعم لغة PHP المصفوفات أحادية ومتعددة الأبعاد، ويمكن أن ينتجها المستخدم بنفسه أو أن يستخدم دوالًا أخرى لإنشائها. توجد كذلك دوال متخصصة للتعامل مع قواعد البيانات وملأ المصفوفات من نواتج استعلامات قواعد البيانات، وتعيد الكثير من الدوال مصفوفاتٍ أيضًا. رجاءً تصفَّح نوع البيانات الخاص بالمصفوفات من هذا التوثيق للحصول على شرح تفصيلي عن كيفية استعمال المصفوفات في لغة PHP. انظر ...

الأخطاء في PHP

مقدمة لا مفرّ من الوقوع في الأخطاء مهما كنّا حريصين في كتابة الشيفرة. تبلغ PHP عن الأخطاء والتحذيرات والملاحظات التي تحدث بسبب المشاكل الحاصلة في وقت التشغيل، وتصبح عملية تنقيح الأخطاء (Debugging) أكثر سهولة عند معرفة كيفية الكشف عن هذه الأخطاء والتعامل معها. الأساسيات تبلّغ PHP عن الأخطاء الناجمة عن عدد من الأخطاء الداخلية، ويمكن الاستفادة من ذلك في الكشف عن عدد من الحالات المختلفة ويمكن عرضها و/أو تسجيلها حسب الحاجة. تقسم الأخطاء في PHP إلى أنواع مختلفة، وهناك قائمة ...

المراجع في PHP

المراجع (references) في PHP هي وسيلة للوصول إلى محتوى المتغير نفسه باستخدام أسماء مختلفة، والمراجع لا تشبه المؤشّرات في لغة C، فعلى سبيل المثال لا يمكن إجراء العمليات الحسابية الخاصّة بالمؤشّرات على المراجع، وهي ليست عناوين ذاكرة حقيقية، وهكذا. راجع الصفحة "ما هو غير المقصود بالمراجع" للمزيد من المعلومات. المراجع هي أسماء بديلة رمزية مجدولة (Symbol table aliases). لاحظ أنّ اسم المتغير ومحتواه مختلفان في لغة PHP؛ لهذا يمكن لنفس المحتوى أن يحمل اسمين مختلفين. وأقرب مثال على ذلك هو ...

declare في PHP

(PHP 4, PHP 5, PHP 7) تستخدم بنية declare لتعيين موجّهات التنفيذ (execution directives) لكتلة من الشيفرة، وصيغة declare مشابهة لبنى التحكم في تدفق الشيفرة. الوصف declare (directive) statement يتيح الموجه تعيين سلوك كتلة (block). يمكن للغة في الوقت الحاضر أن تتعرف على ثلاثة أنواع من الموجهات فقط: موجه ticks (للمزيد من المعلومات حول موجه ticks انظر أدناه)، وموجه encoding (للمزيد من المعلومات حول موجه encoding انظر أدناه)، وموجه strict_types (للمزيد من المعلومات راجع قسم strict في ...

else في PHP

(PHP 4, PHP 5, PHP 7) قد ترغب في كثير من الأحيان تنفيذ عبارة معينة عند تحقق شرط معين وتنفيذ عبارة أخرى في حال عدم تحقق الشرط. هنا يأتي دور else، والتي تعمل على تمديد عبارة if لتنفيذ عبارة أخرى في حال أدّى حساب عبارة if إلى النتيجة FALSE. على سبيل المثال تطبع الشيفرة التالية عبارة 'a is greater than b' إن كان المتغير ‎$a أكبر من المتغير ‎$b، وتطبع العبارة 'a is NOT greater than b' إن كان ‎$a ...

الاستثناءات في PHP

يتضمّن الإصدار الخامس من PHP نموذج استثناءات مشابهًا للغات البرمجية الأخرى. يمكن رمي الاستثناء والتقاطه في PHP، ويمكن إحاطة الشيفرة بكتلة try لتسهيل عملية التقاط الاستثناءات المحتملة، ويجب أن ترتبط بكل كتلة try إما كتلة catch أو finally واحدة على الأقل. يجب أن يكون كائن الاستثناء المرمي نسخة من الصنف Exception أو صنفًا متفرعًا منه، ويؤدي رمي كائن لا ينتمي إلى هذا الصنف إلى حدوث خطأ من نوع Fatal. الكتلة catch يمكن استخدام كتل catch متعدّدة لالتقاط أصناف مختلفة من ...

elseif في PHP

(PHP 4, PHP 5, PHP 7) كما هو واضح من الاسم فإنّ هذه العبارة هي مزيج من if و else، وكما هو الحال مع else يمكن توسيع عبارة if لتنفيذ عبارة أخرى في حال كانت نتيجة تعبير if هي FALSE. ولكن، على العكس من else، فإن elseif تنفذ ذلك التعبير البديل في حالة واحدة فقط وهي أن تكون نتيجة التعبير الشرطي المتعلق بعبارة elseif هي TRUE. فعلى سبيل المثال تعرض الشيفرة التالية عبارة 'a is bigger than b'، أو 'a ...

return في PHP

(PHP 4, PHP 5, PHP 7) تعيد تنفيذ البرنامج إلى الوحدة التي قامت بالاستدعاء، وسيستمر التنفيذ إلى التعبير الذي يلي تعبير الاستدعاء. إذا استدعيت عبارة return داخل الدالة فإنّها ستنهي تنفيذ الدالة على الفور وتعيد معاملها كقيمة لاستدعاء الدالة. تنهي return أيضًا تنفيذ عبارة eval()‎ أو ملف الشيفرة. إن استدعيت عبارة return من النطاق العام (global scope) فإنها تنهي عملية تنفيذ ذلك الملف. وإن كان ملف الشيفرة مضمنًا (included) أو مطلوبًا (required)، فإن التحكّم يعود إلى الملف المستدعي مرة أخرى. ...

include في PHP

(PHP 4, PHP 5, PHP 7) تعمل عبارة include على تضمين ومعالجة الملف المحدّد. ينطبق التوثيق التالي على عبارة require. تُضمّن الملفات بالاعتماد على المسار المعطى للعبارة، وفي حال عدم تحديد المسار، تأخذ include المسار المحدد في include_path. إن لم يكن الملف موجودًا في include_path ستتحقّق include في المجلّد الذي يحتوي على الشيفرة التي أجرت الاستدعاء وفي مجلد العمل الحالي قبل أن تطلق خطأً. تطلق بنية include تحذيرًا إن لم تتمكن من العثور على الملف، وتختلف في ذلك عن require ...

include_once في PHP

(PHP 4, PHP 5, PHP 7) تُضمِّن العبارة include_once الملفّ المحدد وتعالجه أثناء تنفيذ الشيفرة. هذه السلوك مشابه لعبارة include والفرق الوحيد هنا هو إن كانت شيفرة ذلك الملف مضمّنة من قبل فإنّها لن تُضمِّنَه مرة أخرى، وترجع include_once القيمة TRUE، وهذا السلوك متوقع من اسم العبارة. يمكن استخدام include_once في الحالات التي يمكن لنفس الملف أن يُضمَّن ويُعالَج لأكثر من مرة خلال مرحلة معيّنة من مراحل تنفيذ الشيفرة، وفي هذه الحالة يمكن تجنب بعض المشاكل مثل إعادة تعريف الدوال ...

break في PHP

(PHP 4, PHP 5, PHP 7) تنهي break تنفيذ حلقات for أو foreach أو while أو do-while أو بنية switch. تأخذ break معاملًا عدديًا اختياريًا يُحدّد من خلاله عدد البنى المتداخلة التي‏ يجب إيقاف تنفيذها. القيمة الافتراضية لهذا المعامل هي 1، والذي يعني إيقاف تنفيذ البنية الحالية فقط. <?php $arr = array('one', 'two', 'three', 'four', 'stop', 'five'); while (list(, $val) = each($arr)) { if ($val == 'stop') { break; /* يمكن أيضًا كتابة /* ...

المتغيرات في PHP

يكون التعبير عن المتغيرات في PHP باستخدام علامة $ متبوعة باسم المتغير والذي يكون حساسًا لحالة الأحرف. تتبع المتغيرات نفس القواعد المتبّعة للتسمية في PHP. إذ يبدأ اسم المتغير الصحيح بحرف أو بشرطة سفلية متبوعة بعدد غير محدد من الحروف أو الأرقام أو الشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expression) للتعبير عن اسم المتغير فسيكون كالتالي: '‎‎[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*‎‎'. ملاحظة: في هذا الدليل الحرف هو كل ما يقع ضمن النطاق a-z و A-Z والبايتات من 127 إلى 255 (0x7f-0xff). ملاحظة: ...

switch في PHP

(PHP 4, PHP 5, PHP 7) تشبه عبارة switch سلسلةً من عبارات if مطبّقة على نفس التعبير. قد تحتاج في بعض الأحيان إلى مقارنة نفس المتغير (أو التعبير) مع قيم مختلفة (حالات cases)، وتنفيذ شيفرة مختلفة بالاعتماد على ذلك، وهذه هي وظيفة عبارة switch. ملاحظة: بخلاف بعض اللغات البرمجية، يمكن استخدام عبارة continue في switch وهي تعمل عمل العبارة break. إن كنت تستخدم switch داخل حلقة وأردت الانتقال إلى الدورة التالية في الحلقة التكرارية الخارجية، استخدم continue 2. ملاحظة: تؤدي ...

الدوال في PHP

الدوال المعرّفة من طرف المستخدم تتبع أسماء الدوالّ نفس القواعد المتبّعة في اللغة للتسمية. يبدأ الاسم الصحيح للدالة بحرف أو شرطة سفلية، متبوعًا بأيّ عددٍ من الحروف أو الأرقام أو الشرطات السفلية. ويمكن التعبير عن هذه الصيغة باستخدام التعابير النمطية بالصورة التالية: ‎[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*‎. معاملات الدوال يمكن تمرير المعلومات إلى الدوالّ بواسطة قائمة المعاملات argument list، وهي قائمة من التعابير المفصولة بالعلامة (,)، وتُعالج هذه المعاملات من اليسار إلى اليمين. إعادة القيم يمكن إعادة القيم باستخدام عبارة return الاختيارية، ويمكن إعادة أيّ نوع من ...

الثوابت في PHP

الثابت هو معرّف (اسم) لقيمة بسيطة، وكما هو واضح من الاسم فإنّ هذه القيمة غير قابلة للتبديل أثناء تنفيذ الشيفرة (باستثناء الثوابت السحرية والتي لا تعدّ ثوابت في الواقع). الثابت حساس لحالة الأحرف ومن الشائع استخدام الأحرف الكبيرة في تسمية الثوابت. تتبع الثوابت نفس القواعد المتّبعة للتسمية في PHP، فاسم الثابت الصحيح يبدأ بحرف أو بشرطة سفلية، متبوعًا بعدد غير محدّد من الأحرف والأرقام والشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expressions) للتعبير عن اسم المتغير فسيكون كالتالي: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* ...

while في PHP

(PHP 4, PHP 5, PHP 7) تعد حلقات while التكرارية أبسط أنواع الحلقات في PHP، وتعمل بطريقة مماثلة لنظيرتها في لغة C، والصيغة الأساسية لعبارة while هي: while (expr) statement تؤدي عبارة while وظيفةً بسيطةً، وهي تنفيذ العبارة أو العبارات التي تحتضنها بصورة متكررة ما دامت العبارة الشرطية المرتبطة بحلقة while تؤول إلى TRUE. تتحقّق اللغة من قيمة التعبير في بداية كل دورة، لهذا لن يؤدي تغيير القيمة أثناء عملية التنفيذ إلى إيقاف الدورة بل ستكمل الشيفرة ...

الاستثناءات في PHP

يتضمّن الإصدار الخامس من PHP نموذج استثناءات مشابهًا للغات البرمجية الأخرى. يمكن رمي الاستثناء والتقاطه في PHP، ويمكن إحاطة الشيفرة بكتلة try لتسهيل عملية التقاط الاستثناءات المحتملة، ويجب أن ترتبط بكل كتلة try إما كتلة catch أو finally واحدة على الأقل. يجب أن يكون كائن الاستثناء المرمي نسخة من الصنف Exception أو صنفًا متفرعًا منه، ويؤدي رمي كائن لا ينتمي إلى هذا الصنف إلى حدوث خطأ من نوع Fatal. الكتلة catch يمكن استخدام كتل catch متعدّدة لالتقاط أصناف مختلفة من ...

include في PHP

(PHP 4, PHP 5, PHP 7) تعمل عبارة include على تضمين ومعالجة الملف المحدّد. ينطبق التوثيق التالي على عبارة require. تُضمّن الملفات بالاعتماد على المسار المعطى للعبارة، وفي حال عدم تحديد المسار، تأخذ include المسار المحدد في include_path. إن لم يكن الملف موجودًا في include_path ستتحقّق include في المجلّد الذي يحتوي على الشيفرة التي أجرت الاستدعاء وفي مجلد العمل الحالي قبل أن تطلق خطأً. تطلق بنية include تحذيرًا إن لم تتمكن من العثور على الملف، وتختلف في ذلك عن require ...

PHP/misc

هذه مجموعة من الدوال المتفرقة في لغة PHP، والتي لا تنتمي إلى التصنيفات الأخرى الموجودة في هذا التوثيق. connection_aborted()‎ تفحص الدالةconnection_aborted()‎ ‎ ما إذا كان العميل غير متصل. connection_status()‎ تحصل الدالةُ connection_status()‎ على bitfield لحالة الاتصال. constant()‎ تعيدُ الدالة constant()‎ قيمة ثابتٍ ما. ob_end_clean()‎ تنظف (تمسح) الدالة ob_end_clean()‎ المخزنَ المؤقت للإخراج وتوقف التخزين المؤقت للإخراج. ob_clean()‎ تنظف (تمسح) الدالة ob_clean()‎ المخزنَ المؤقت للإخراج. die()‎ تكافئ البنيةُ die البنيةَ exit()‎. eval()‎ تُقدِّر البنيةُ eval()‎ قيمة شيفرة PHP المُمثَّلة في سلسلةٍ نصيةٍ. exit()‎ تُخرج البنية exit()‎ رسالةً وتنهي البرنامج الحالي. get_browser()‎ تعيد الدالة get_browser()‎ الميزات التي يدعمها متصفح المستخدم. ...

while في PHP

(PHP 4, PHP 5, PHP 7) تعد حلقات while التكرارية أبسط أنواع الحلقات في PHP، وتعمل بطريقة مماثلة لنظيرتها في لغة C، والصيغة الأساسية لعبارة while هي: while (expr) statement تؤدي عبارة while وظيفةً بسيطةً، وهي تنفيذ العبارة أو العبارات التي تحتضنها بصورة متكررة ما دامت العبارة الشرطية المرتبطة بحلقة while تؤول إلى TRUE. تتحقّق اللغة من قيمة التعبير في بداية كل دورة، لهذا لن يؤدي تغيير القيمة أثناء عملية التنفيذ إلى إيقاف الدورة بل ستكمل الشيفرة ...

التعابير في PHP

تعدّ التعابير إحدى الوحدات البنائية الأكثر أهمية في PHP، ففي هذه اللغة كل ما تكتبه تقريبًا هو عبارة عن تعبير، لذا فإن أبسط وأدقّ تعريف للتعابير هو: "كلّ ما يمتلك قيمة". تعدّ الثوابت والمتغيرات أبسط أشكال التعابير، فعند كتابة ‎$a=5 فإننا نسند '5' إلى ‎$a. ومن الواضح أن '5' تمتلك القيمة 5، أو بعبارة أخرى فإن '5' هي تعبير قيمته 5. (في هذه الحالة '5' هو عدد صحيح ثابت). بعد إجراء عملية الإسناد هذه فإن المتوقع هو أن تكون قيمة ...

require_once في PHP

(PHP 4, PHP 5, PHP 7) عبارة require_once مطابقة للعبارة require باستثناء أن PHP ستتحقق مما إذا كان الملف مضمّنًا أم لا، وذلك لتجنّب تضمينه (require) مرة أخرى. راجع توثيق include_once للمزيد من المعلومات حول طريقة عمل ‎_once، والفرق بينها وبين الدوال التي لا تلحق بها هذه اللاحقة. مصادر صفحة require_once في توثيق PHP الرسمي.

التعابير في PHP

تعدّ التعابير إحدى الوحدات البنائية الأكثر أهمية في PHP، ففي هذه اللغة كل ما تكتبه تقريبًا هو عبارة عن تعبير، لذا فإن أبسط وأدقّ تعريف للتعابير هو: "كلّ ما يمتلك قيمة". تعدّ الثوابت والمتغيرات أبسط أشكال التعابير، فعند كتابة ‎$a=5 فإننا نسند '5' إلى ‎$a. ومن الواضح أن '5' تمتلك القيمة 5، أو بعبارة أخرى فإن '5' هي تعبير قيمته 5. (في هذه الحالة '5' هو عدد صحيح ثابت). بعد إجراء عملية الإسناد هذه فإن المتوقع هو أن تكون قيمة ...

PHP/Topics

الضبط كيفية ضبط لغة PHP عبر مختلف أنواع ملفات الضبط، وطرائق تعديلها. بنية اللغة تبيان أنواع وسوم لغة PHP، وطريقة دمجها مع HTML، وشرح بعض خصائصها البنيوية (ومن بينها التعليقات). أنواع البيانات لا يعيّن المبرمج نوع المتغير عادةً، بل تُعيِّنُه لغة PHP أثناء التنفيذ بالاعتماد على محتوى المتغير المستخدم. القيم المنطقية (boolean) القيم المنطقية (boolean) من أبسط الأنواع، فالتعبير المنطقي يُعبِّر عن صحّة تعبيرٍ ما، فإما أن تكون قيمة التعبير صحيحةً TRUE أو خطأً FALSE. الأعداد الصحيحة (integer) العدد الصحيح هو عدد من ...

الموارد في PHP

المورد هو متغير خاص يحمل مرجعيةً إلى مورد خارجي، تُنشَأ الموارد وتُستخدَم باستعمال دوال خاصة، اطلع على الملحق للحصول على قائمة تضم جميع الدوال مع نوع المورد المناسب. اطلع على الدالة get_resource_type()‎ أيضًا. التحويل إلى مورد لا يمكن تحويل القيم من الأنواع الأخرى إلى موارد، فهذه المتغيرات تحمل مقابض (handles) خاصة لفتح الملفات، اتصالات قاعدة البيانات، مناطق الصورة … تحرير الموارد بفضل نظام عدّ المراجع (reference-counting system) الموجود في محرك Zend، ستُكتَشَف الموارد التي لا تمتلك مرجع إليها تلقائيًا، ,وتُحرَّر ...

return في PHP

(PHP 4, PHP 5, PHP 7) تعيد تنفيذ البرنامج إلى الوحدة التي قامت بالاستدعاء، وسيستمر التنفيذ إلى التعبير الذي يلي تعبير الاستدعاء. إذا استدعيت عبارة return داخل الدالة فإنّها ستنهي تنفيذ الدالة على الفور وتعيد معاملها كقيمة لاستدعاء الدالة. تنهي return أيضًا تنفيذ عبارة eval()‎ أو ملف الشيفرة. إن استدعيت عبارة return من النطاق العام (global scope) فإنها تنهي عملية تنفيذ ذلك الملف. وإن كان ملف الشيفرة مضمنًا (included) أو مطلوبًا (required)، فإن التحكّم يعود إلى الملف المستدعي مرة أخرى. ...

التابع Object.to_enum في روبي

يُنشئ التابع enum_for نسخةً من الصنف Enumerator الذي يجري عملية عدٍّ (enumerate) وتكرار عبر استدعاء التابع المُمرَّر إليها مع كائنٍ محدَّد، وتمرير وسائط إن أعطيت. إذا مُرِّرت كتلة (block) إلى التابع، فستُستخدم لحساب حجم نسخة الصنف Enumerator دون الحاجة إلى تكرارها (ألقِ نظرة على التابع Enumerator.size). البنية العامة enum_for(method = :each, *args) → enum enum_for(method = :each, *args){|*args| block} → enum المعاملات method التابع المُمرَّر. القيمة الافتراضية لهذا المعامل هي: each:. args* الوسائط المراد تمريرها إلى التابع. args| block*| الكتلة ووسائطها ...

التابع Object.enum_for في روبي

يُنشئ التابع enum_for نسخةً من الصنف Enumerator الذي يجري عملية عدٍّ (enumerate) وتكرار عبر استدعاء التابع المُمرَّر إليها مع كائنٍ محدَّد، وتمرير وسائط إن أعطيت. إذا مُرِّرت كتلة (block) إلى التابع، فستُستخدم لحساب حجم نسخة الصنف Enumerator دون الحاجة إلى تكرارها (ألقِ نظرة على التابع Enumerator.size). البنية العامة enum_for(method = :each, *args) → enum enum_for(method = :each, *args){|*args| block} → enum المعاملات method التابع الذي ستُطبَّق عليه العملية. القيمة الافتراضية لهذا المعامل هي: each:. args* الوسائط المراد تمريرها إلى التابع. args| ...

الصنف Method في روبي

يتم إنشاء كائنات الصنف Method بواسطة التابع Object.method، وترتبط بكائن معين (وليس بالصنف وحسب). ويمكن استخدامها لاستدعاء التابع داخل الكائن، أو ككتلة (block) مرتبطة بمكرر (iterator). كما يمكن فك ارتباطها (unbound) من كائن محدد (سيؤدي ذلك إلى إنشاء الكائن UnboundMethod) ثم ربطها بآخر. class Thing def square(n) n*n end end thing = Thing.new meth = thing.method(:square) meth.call(9) #=> 81 [ 1, 2, 3 ...

الصنف UnboundMethod في روبي

تدعم روبي شكلين من التوابع الكائنية (objectified methods). يستخدم الصنف Method لتمثيل التوابع المرتبطة بكائن معين، ويمكن إنشاء كائنات التوابع من هذا النوع عبر التابع Object.method. تدعم روبي أيضًا التوابع الحرة (unbound methods)؛ وهي كائنات توابع غير مرتبطة بكائن معين. يمكن إنشاؤها إما عن طريق استدعاء Module.instance_method، أو عن طريق استدعاء unbind على تابع مرتبط (bound method object). نتيجة كليهما ستكون تابعًا حرًا (كائن من النوع UnboundMethod). لا يمكن استدعاء التوابع الحرة إلا بعد ربطها بكائن ما. ويجب أن يعيد ...

البرمجة كائنية التوجه في PHP

بدءًا من الإصدار الخامس من اللغة، أعيدت كتابة نموذج الكائنات للحصول على أداء أفضل وإضافة المزيد من الميزات، وقد كان هذا من التغييرات الكبيرة في اللغة، إذ قدّم الإصدار الخامس نموذج مكتملًا للكائنات. ومن الميزات التي قدّمها الإصدار الخامس قابلية الرؤية (visibility)، الأصناف والتوابع المجرّدة (abstract) والنهائية (final)، المزيد من التوابع السحرية (magical methods)، الواجهات (interfaces)، الاستنساخ (cloning) والإشارة إلى الأنواع (typehinting). تعامل PHP الكائنات معاملة المراجع (references) أو المقابض (handles)، بمعنى أنّ كلّ متغيّر يتضمن كائنًا مرجعيًا وليس نسخة ...

عرض (100 السابقة | 100 التالية) (20 | 50 | 100 | 250 | 500).