نتائج البحث

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

الدالة constant()‎ في PHP

(PHP 4 >= 4.0.4, PHP 5, PHP 7) تعيدُ الدالة constant()‎ قيمة ثابتٍ ما. الوصف mixed constant ( string $name ) تعيدُ الدالة constant()‎ قيمة الثابت المشار إليه بالمعامل name. الدالة constant()‎ مفيدة إذا كنت بحاجة إلى استرداد قيمة ثابت، ولكن لا تعرف اسمه. أي أنه مُخَزَّنٌ في متغير أو مُعَادٌ بواسطة دالة. تعمل الدالة constant()‎ أيضًا مع ثوابت الأصناف. العوامل name اسم الثابت. القيم المعادة إعادة قيمة الثابت، أو NULL إذا لم يكن الثابت مُعرَّفًا. الأخطاء والاستثناءات يُنشأ خطأ من ...

الوحدة File::Constants في روبي

توفر الوحدة File::Constants ثوابت متعلقة بالملفات في روبي. جميع ثوابت الملفات المحتملة موثَّقة هنا ولكن ليس بالضرورة أن تكون كلها متاحة على منصتك. إن كانت المنصة الأساسية لا تعرِّف ثابتًا ما، فلن يُعرَّف ثابت روبي المقابل له. قد تجد بعض المعلومات المفيدة في توثيقات المنصة التي تعمل عليها (مثل الدليل man للدالة open(2)‎). الثوابت APPEND الإضافة عند كل عملية كتابة. BINARY تعطيل تحويل الشيفرة السطري. CREAT إنشاء ملف إن لم يكن موجودًا. DIRECT محاولة تصغير ثأتيرات الذاكرة المخبَّأة (cache) للدخل ...

الدالة define()‎ في PHP

(PHP 4, PHP 5, PHP 7) تُعرِّف الدالة define()‎ ثابتًا. الوصف bool define ( string $name , mixed $value [, bool $case_insensitive = FALSE ] ) تُستخدم الدالة define()‎ لتعريف ثابتٍ ما بإعطائه اسمًا معينًا. المعاملات name اسم الثابت.   value قيمة الثابت. سابقًا في PHP 5، كانت القيمة value التي يمكن أن تُسنَد إلى الثابت constant هي قيمةٌ أوليةٌ فقط (الأعداد الصحيحة، والأعداد العشرية، والسلاسل النصية، والقيم المنطقية، والقيمة NULL) ولاحقًا في PHP 7 بات من الممكن إسناد مصفوفة ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

المتغيرات المعرفة مسبقًا في PHP

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

المتغيرات المعرفة مسبقًا في PHP

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

الثوابت المعرَّفة مسبقًا في قسم التعامل مع المجلَّدات في PHP

الاسم النوع الوصف DIRECTORY_SEPARATOR string PATH_SEPARATOR string فاصلة منقوطة في ويندوز، ونقطتان في غيره. SCANDIR_SORT_ASCENDING integer أصبح متاحٌ منذ إصدار PHP 5.4.0. SCANDIR_SORT_DESCENDING integer أصبح متاحٌ منذ إصدار PHP 5.4.0. SCANDIR_SORT_NONE integer أصبح متاحٌ منذ إصدار PHP 5.4.0. انظر أيضًا قسم التعامل مع المجلَّدات. قسم التعامل مع نظام الملفات. مصادر الصفحة constants في توثيق PHP الرسمي.

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()‎ الميزات التي يدعمها متصفح المستخدم. ...

الثوابت في PHP

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

الثوابت في PHP

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

الدالة defined()‎ في PHP

(PHP 4, PHP 5, PHP 7) تتحقق الدالة defined()‎ من الثابت المعطىَ إن كان موجودًا. الوصف bool defined ( string $name ) تستخدم الدالة defined()‎ للتحقق من الثابت المعطىَ إن كان موجودًا ومعرفًا. ملاحظة: إِذا كنُت تريد التحقق من وجود متغيرًا ما استخدم الدالة isset()‎، ذلك لأنَّ الدالة defined()‎ تُستخدم على الثوابت فقط.  إذا كنُت تريد التحقق من وجود دالة ما، فاستخدم الدالة function_exists()‎. المعاملات name اسم الثابت الذي نريد التحقق من وجوده. القيم المعادة ستعُاد القيمة TRUE إذا كان ...

الدالة session_id()‎ في PHP

(PHP 4, PHP 5, PHP 7) تُعيد الدالة session_id()‎ أو تَضبط المعرف الحالي للجلسة. الوصف string session_id ([ string $id ] ) تُعيد الدالة session_id()‎ أو تضبط المعرف الحالي للجلسة. يُمكن استعمال المعرف الثابت للجلسة (constant SID)  لاسترجاع اسم الجلسة ومعرفها في متغير نصي مناسب للإضافة على الروابط (URLs). المعاملات   id إذا حُدد المعامل  id، سيُبدَّل المعرف الحالي للجلسة إليه، ويجب في هذه الحالة استخدام الدالة session_id()‎ قَبل الدالة session_start()‎. بالنسبة للحروف المسموح بِها في التسمية فهي مِن a حتى z ومِن A حتى Z، ومِن ...

الدالة json_decode()‎ في PHP

(PHP 5 >= 5.2.0, PHP 7, PECL json >= 1.2.0) تفك الدالة json_decode()‎ ترميز سلسلة نصية بصيغة JSON. الوصف mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0]]] ) تأخذ سلسلة مُرمَّزة بصيغة JSON وتحوِّلها إلى مُتغيِّر PHP. المعاملات json سلسلة نصية بصيغة JSON التي سيُفكُّ ترميزها. تعمل هذه الدّالّة مع سلاسل نصّيّة مُرمَّزة بترميز UTF-8 فقط. ملاحظة: تعتمد PHP مجموعة عُليا من JSON كما هو مُحدَّد في المعيار ...

الثوابت المعرَّفة مسبقًا في قسم التعامل مع نظام الملفات في PHP

الثوابت المذكورة في الأسفل مُعرَّفةٌ باستعمال هذا الملحق، وستُتاح هذه الثوابت فقط عند توفُّر الملحق إمّا عندما تُفسَّر (compiled) إلى لغة PHP أو عند التحميل الديناميكي وقت التنفيذ. الاسم النوع الوصف SEEK_SET integer SEEK_CUR integer SEEK_END integer LOCK_SH integer LOCK_EX integer LOCK_UN integer LOCK_NB integer GLOB_BRACE integer GLOB_ONLYDIR integer GLOB_MARK integer GLOB_NOSORT integer GLOB_NOCHECK integer GLOB_NOESCAPE integer GLOB_AVAILABLE_FLAGS integer PATHINFO_DIRNAME integer PATHINFO_BASENAME integer PATHINFO_EXTENSION integer PATHINFO_FILENAME integer منذ إصدار PHP 5.2.0. FILE_USE_INCLUDE_PATH integer البحث عن اسم الملف filename في المسار ...

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

تستخدم instanceof لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف معين: المثال 1: استخدام instanceof مع الأصناف <?php class MyClass { } class NotMyClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof NotMyClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(false) يمكن استخدام instanceof كذلك لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف موروث من صنف آخر: المثال 2: استخدام instanceof مع الأصناف الموروثة <?php class ParentClass { } class MyClass extends ParentClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof ParentClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(true) يمكن استخدام عامل النفي ...

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

تستخدم instanceof لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف معين: المثال 1: استخدام instanceof مع الأصناف <?php class MyClass { } class NotMyClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof NotMyClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(false) يمكن استخدام instanceof كذلك لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف موروث من صنف آخر: المثال 2: استخدام instanceof مع الأصناف الموروثة <?php class ParentClass { } class MyClass extends ParentClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof ParentClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(true) يمكن استخدام عامل النفي ...

تبديل الأعداد السحرية بثوابت رمزية (Replace Magic Number with Symbolic Constant)

المشكلة تستخدم الشيفرة البرمجية عددًا له معنىً معين له. الحل استبدال هذا العدد بثابت له اسم يمكن قراءته ويشرح معنى العدد. مثال قبل إعادة التصميم تستخدم الشيفرة التالية العدد 9.81 بالشكل المجرَّد الذي يمثِّل ثابت الجاذبية الأرضية: في لغة Java: double potentialEnergy(double mass, double height) { return mass * height * 9.81; } في لغة C#‎: double PotentialEnergy(double mass, double height) { return mass * height * 9.81; } في لغة PHP: function potentialEnergy($mass, $height) { return $mass * $height * ...

التابع Module.const_set‎ في روبي

يضبط التابع const_set قيمة ثابت محدَّد إلى قيمة الكائن المعطى ثم يعيد ذلك الكائن. في حال لم يكن هناك ثابت يحمل الاسم المعطى، فسيُنشئ ثابت جديد ويسند إلى تلك القيمة. البنية العامة const_set(sym, obj) → obj const_set(str, obj) → obj‎ المعاملات sym‎ رمز يمثل الثابت. إذا لم يكن المعامل sym اسم ثابت صالح، فسيُطلق الخطأ NameError مع التحذير "wrong constant name". obj‎ الكائن المراد ضبط قيمته إلى الثابت. str‎ سلسلة نصية تمثل الثابتة. إذا لم يكن المعامل str‎ اسم ثابت صالح، فسيُطلق ...

التابع Module.constants‎ في روبي

يعيد التابع constants مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. تتضمن هذه القائمة أسماء جميع الوحدات والأصناف المحددة في النطاق العام (global scope). البنية العامة constants→ array القيمة المعادة تعاد مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. أمثلة مثال على استخدام التابع constants‎: Module.constants.first(4) # => [:ARGF, :ARGV, :ArgumentError, :Array] Module.constants.include?(:SEEK_SET) # => false class IO Module.constants.include?(:SEEK_SET) # => true end‎ انظر أيضا التابع const_set: يضبط قيمة الثابت المعطى عند الكائن المحدد، ...

التابع Module.constants‎ في روبي

يعيد التابع constants مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها من الوحدة. هذا يتضمن أسماء الثوابت في الوحدات المُتضمنة إلا إن مُرِّرت القيمة false. لا يوجد ضمانة لمعرفة الترتيب الذي ستُعاد به الثوابت. البنية العامة constants(inherited)→ array‎ المعاملات inherited‎ قيمة منطقية إن كانت false، فلن تشمل المصفوفة المعادة أسماء الثوابت في الوحدات المُتضمنة. القيمة المعادة تعاد مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها من الوحدة. أمثلة مثال على استخدام التابع constants‎: IO.constants.include?(:SYNC) ...

التابع ‎Module.const_defined?‎‎ في روبي

يتحقق التابع const_defined?‎ مما إذا كانت الوحدة التي استُدعي معها أو أحد أسلافها (ancestors) تحوي الثابت المعطى. Float.const_defined?(:EPSILON) #=> true, found in Float itself Float.const_defined?("String") #=> true, found in Object (ancestor) BasicObject.const_defined?(:Hash) #=> false إذا كانت الوحدة من النوع Module، فسيتم إضافة إلى ذلك فحص Object وكذلك أسلافه. Math.const_defined?(:String) #=> true, found in Object في كل الأصناف أو الوحدات المفحوصة، إذا لم يكن الثابت موجودًا وكان التحميل التلقائي (autoload) مفعلًا له، ...

include في PHP

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

include في PHP

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

include في PHP

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

const في JavaScript

الثوابت (constants) تكون تابعةً للمجال الكتلي (block scope) بما يُشبه المتغيرات المُعرَّفة عبر التعبير let، لكن قيمة الثوابت لا يمكن أن تتغير عبر إعادة إسناد القيمة، ولا يمكن إعادة تصريحها. البنية العامة const name1 = value1 [, name2 = value2 [, ... [, nameN = valueN]]]; nameN اسم الثابت، ويمكن أن يكون أيّ معرِّف صالح في JavaScript. valueN قيمة الثابت، ويمكن استخدام أيّ تعبير (expression) صالح في JavaScript بما في ذلك الدوال. الوصف تكون الثوابت إما عامةً أو محليةً وتابعةً ...

التابع Module.const_get‎ في روبي

يتحقق التابع const_get من وجود ثابت باسم محدد في الوحدة التي استُدعي معها. في حال تعيين المعامل inherit، فسيشمل البحث الأسلاف أيضًا (وكذلك Object إن كانت الوحدة من النوع Module). تُعاد قيمة الثابت إذا عُثر على تعريف له؛ خلا ذلك، سيُطلق الخطأ NameError. Math.const_get(:PI) #=> 3.14159265358979 سيبحث التابع const_get بشكل تكراري (recursively) عن أسماء الثوابت إذا تم توفير اسم صنف من مجال أسماء (namespaced class name). اطلع مثلًا على المثال التالي: module Foo; class Bar; end end Object.const_get 'Foo::Bar' تؤخذ الراية inherit بالحسبان ...

التابع datetime.time()‎ في بايثون

يعيد التابع كائن timedelta يمثّل مقدار إزاحة التوقيت المحلي عن التوقيت العالمي المنسّق UTC. البنية العامة ‎tzinfo.utcoffset(dt) المعاملات القيمة المعادة يعيد التابع كائن timedelta يمثّل مقدار إزاحة التوقيت المحلي عن التوقيت العالمي المنسّق UTC. إن كان التوقيت المحلّي في الجانب الشرقي من التوقيت العالمي المنسّق فإنّ النتيجة تحمل إشارة موجبة، وإن كان في الجانب الغربي فإنّ النتيجة تحمل إشارة سالبة. يجب الانتباه إلى أنّ المقصود هنا هو مقدار الإزاحة الكلية عن التوقيت العالمي المنسّق؛ فعلى سبيل المثال إن كان كائن ...

هوس الحقول الأساسية (Primitive Obsession)

توصيف المشكلة تظهر المشكلة بعدَّة جوانب: استخدام الحقول الأساسيّة (primitives) بدلًا من الكائنات (objects) لأداء المهامّ البسيطة (مثل: عمليات العملة [currency] والمجالات [ranges] والسلاسل النصية [strings] المُخصَّصة للأرقام الهاتفية، …إلخ.). استخدام الثوابت (constants) لترميز المعلومات (مثل استخدام الثابت USER_ADMIN_ROLE = 1 للدلالة على المستخدمين ذوي الصلاحيّات الإداريّة). استخدام الثوابت النصيّة (string constants) كأسماءٍ للحقول (fields) في مصفوفات البيانات (data arrays). أسبابها تنشأ هذه المشكلة بسبب العبارة المُدمِّرة التي يفكّر بها المبرمجون بلحظة ضعفٍ: "حقلٌ واحدٌ فقط، ولتخزين معلومةٍ بسيطةٍ وحسب!"ولأنهم ...

الدوال المجهولة في PHP

الدوال المجهولة (anonymous functions) التي تُعرَف أيضًا بالمصطلح (closures) تسمح بإنشاء دالة ليس لها اسم محدد. غالبًا ما تستخدم هذه الدوال للحصول على قيمتها كمعاملات استدعاء (راجع callback) ولها استخدامات أخرى. تطبق اللغة الصنف Closure لاستخدام الدوال المجهولة. المثال 1: الدوال المجهولة <?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // outputs helloWorld ?> يمكن استخدام الدوال المجهولة كقيم للمتغيرات، وتحول اللغة مثل هذه التعبيرات إلى نسخ instances من الصنف الداخلي Closure. يمكن إسناد الدالة المجهولة إلى متغير بنفس ...

الدوال المجهولة في PHP

الدوال المجهولة (anonymous functions) التي تُعرَف أيضًا بالمصطلح (closures) تسمح بإنشاء دالة ليس لها اسم محدد. غالبًا ما تستخدم هذه الدوال للحصول على قيمتها كمعاملات استدعاء (راجع callback) ولها استخدامات أخرى. تطبق اللغة الصنف Closure لاستخدام الدوال المجهولة. المثال 1: الدوال المجهولة <?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // outputs helloWorld ?> يمكن استخدام الدوال المجهولة كقيم للمتغيرات، وتحول اللغة مثل هذه التعبيرات إلى نسخ instances من الصنف الداخلي Closure. يمكن إسناد الدالة المجهولة إلى متغير بنفس ...

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 تتجاهل اللغة ذلك التعبير. يمكن الحصول ...

الثوابت المتعددة في TypeScript

مقدمة تسمح لنا الثوابت المتعدّدة بتعريف مجموعة مُسمّاةٍ من الثوابت (set of named constants). استخدام الثوابت المتعدّدة يُسهّل توضيحَ نية استعمال الشيفرة أو إنشاء مجموعة حالات مختلفة. تُوفّر TypeScript كلا من الثوابت المتعددة المعتمِدة على الأعداد وتلك المُعتمِدة على السلاسل النصية كذلك. الثوابت المتعددة العددية (Numeric enums) سنبدأ بالثوابت المتعددة العددية، والتي ستكون مألوفة لمن هو آتٍ من لغات البرمجة الأخرى. يُمكن تعريف ثابت متعدّد بالكلمة المفتاحية ‎enum‎: enum Direction { Up = 1, ...

التابع Module.nesting‎ في روبي

يعيد التابع nesting قائمة من الوحدات المتشعبة (Modules nested) لحظة الاستدعاء. البنية العامة nesting → array‎ القيمة المعادة تعاد مصفوفة تحوي قائمة من الوحدات المتشعبة لحظة الاستدعاء. أمثلة مثال على استخدام التابع nesting‎: module M1 module M2 $a = Module.nesting end end $a #=> [M1::M2, M1] $a[0].name #=> "M1::M2"‎ انظر أيضا التابع constants: يعيد مصفوفة مكونة أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. التابع new: ينشئ وحدة مجهولة ...

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

يُطلق الاستثناء NameError عندما يكون الاسم المعطى غير صالح أو غير مُعرّف. انظر إلى السطر البرمجي التالي: puts foo سيُطلق عند تنفيذه الاستثناء التالي: NameError: undefined local variable or method `foo' for main:Object أسماء الثوابت يجب أن تبدأ بحرف كبير، لذلك فالشيفرة البرمجية التالي: Integer.const_set :answer, 42 ستطلق الاستثناء NameError: NameError: wrong constant name answer توابع الصنف العامة (Public Class Methods) new ينشئ استثناءً جديدًا من النوع NameError. توابع النسخة العامة (Public Instance Methods) local_variables يعيد قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلٍق ...

المزيد حول المتغيرات في Bash

يمكن للمتغير أن يحتوي أي نوع من البيانات ما لم يُصرح بخلاف ذلك بوضوح، وتُضبط المتغيرات الساكنة (Constant Variables) باستخدام أمر readonly. وتحتوي المصفوفة على مجموعة من المتغيرات، وإن صُرح بنوع معين من البيانات لتلك المصفوفة فإن جميع العناصر داخلها ستُضبط على احتواء ذلك النوع فقط من البيانات. كذلك تسمح مزايا Bash بإحلال وتحويل المتغيرات بسرعة، وتتضمن العمليات القياسية حساب طول المتغير والتوسعات الحسابية عليه وإحلال محتواه أو جزء من محتواه. أنواع المتغيرات في Bash شرح للقيم العامة للمتغيرات والمتغيرات ...

التابع Module.new‎ في روبي

ينشئ التابع new وحدة مجهولة (anonymous module) جديدة. في حال إعطاء كتلة، فسيٌمرر إليها الوحدة (module)، وستُقيم الكتلة في سياق هذه الوحدة مثل module_eval. اضبط الوحدة وأسند إليها قيمةً ثابتةً (يبدأ اسمها بحرف كبير) إذا كنت تريد معاملتها كأنها وحدة عادية. البنية العامة new→ mod new {|mod| block }→ mod‎ القيمة المعادة تعاد وحدة مجهولة (anonymous module) جديدة. أمثلة مثال على استخدام التابع new‎: fred = Module.new do def meth1 "hello" end def meth2 ...

الأعداد العشرية الثابتة في أردوينو

تُستعمَل الأعداد العشرية الثابتة العشرية، بشكل مشابه للأعداد الصحيحة الثابتة، لجعل الشيفرة أكثر قابليةٍ للقراءة. تُبدَّل الأعداد الثابتة ذات الفاصلة العشرية في وقت تصريف الشيفرة إلى القيمة المساوية والمقابلة لهذا التعبير المكتوب. أمثلة إسناد عدد ثابت ذي فاصلة عشرية إلى متغير: n = 0.005; // يعد العدد 0.005 عددًا ثابتًا ذا فاصلة عشرية ملاحظات وتحذيرات يمكن تمثيل الأعداد الثابتة ذات الفاصلة العشرية بصيغ مختلفة أيضًا. يُقبَل استعمال 'E' و 'e' على أنَّهما مؤشِّرٌان للقوة (exponent)، إذ سيُعدُّ العدد الذي ...

التابع File.to_path في روبي

يعيد التابع to_path سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف الذي استدعي معه. لا يعمل هذا التابع على توحيد شكل وبنية المسار (normalize). قد لا يشير اسم المسار إلى الملف المقابل للملف المعطى. على سبيل المثال، يصبح اسم المسار خاويًا (void) عندما يُنقَل أو يحذف الملف. يرمي هذا التابع الاسثناء IOError للملف المعطى إذا كان قد أنشئ باستعمال File::Constants::TMPFILE لأنه لا يملك اسم مسارٍ.  البنية العامة to_path → filename القيمة المعادة تعاد سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف ...

السلاسل النصية في PHP

السلسلة النصية هي سلسلة من الأحرف، إذ يكون كل حرف ممثلًا ببايت، ولذلك فإن PHP تدعم مجموعةً من 256 حرفًا فقط ولا تقدم دعمًا لمحارف يونيكود، راجع "تفاصيل نوع البيانات string" للمزيد من المعلومات. ملاحظة: بدءًا من الإصدار 7.0.0، لم تعد هنالك قيودٌ حول طول السلسلة النصية على منصات 64 بت، أما بالنسبة لمنصات 32 بت وفي النسخ القديمة، يمكن أن يصل حجم السلسلة النصية إلى 2 جيجا بايت (2147483647 بايت). البنية العامة يمكنك تعريف السلسلة النصية بأربع طرائق مختلفة: ...

التابع File.path في روبي

يعيد التابع path سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف الذي استدعي معه. لا يعمل هذا التابع على توحيد شكل وبنية المسار (normalize). قد لا يشير اسم المسار إلى الملف المقابل للملف المعطى. على سبيل المثال، يصبح اسم المسار خاويًا (void) عندما يُنقَل أو يحذف الملف. يرمي هذا التابع الاسثناء IOError للملف المعطى إذا كان قد أنشئ باستعمال File::Constants::TMPFILE لأنه لا يملك اسم مسارٍ. البنية العامة path → filename to_path → filename القيمة المعادة تعاد سلسلة نصية تمثِّل المسار الذي استُعمِل ...

التابع Module.define_method‎ في روبي

يعرّف التابع define_method تابع نُسخة (instance method) في المُستقبِل (receiver). في حال تمرير كتلة، فستُستخدم كجسم (body) للتابع. تُقيّم هذه الكتلة باستخدام التابع instance_eval، وهو أمر قد يكون مُشكلًا على البعض، لأن define_method خاصة. (لهذا سنحتال ونستخدم التابع send في المثال التالي.) البنية العامة define_method(symbol, method) → symbol define_method(symbol) { block }→ symbol‎ المعاملات symbol‎ رمز. method‎ تابع نُسخة. يمكن أن يكون من النوع Proc أو Method أو UnboundMethod. القيمة المعادة يعاد رمزٌ. أمثلة مثال على استخدام التابع define_method‎: class A ...

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

الصنف Module هو مجموعة من التوابع والثوابت. التوابع الموجودة في الوحدات Module قد تكون إما توابع نسخة (instance methods)، أو توابع وحدة (module methods). توابع النسخة تظهر كتوابع في صنفٍ عند تضمين الوحدة، وذلك على خلاف توابع الوحدة. وعلى النقيض، يمكن استدعاء توابع الوحدة دون إنشاء كائن يُغلفها، بينما قد لا يمكن فعل ذلك مع توابع النسخة. انظر صفحة module_function. في الأمثلة الموجودة في صفحات التوابع، يشير المعامل sym إلى رمز، والذي قد يكون إما سلسلة نصية، أو كائنًا من النوع ...

الثوابت في بايثون

تقدم بايثون مجموعة من الثوابت، بعضها في مجال الأسماء الداخلي، أما البعض الآخر فيضاف من قبل الوحدة site إلى مفسّر بايثون التفاعلي. ثوابت في مجال الأسماء الداخلي False يمثّل هذا الثابت القيمة الخاطئة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. True يمثّل هذا الثابت القيمة الصحيحة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. None هذا الثابت هو القيمة ...

switch في PHP

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

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). ملاحظة: ...

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_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 الاختيارية، ويمكن إعادة أيّ نوع من ...

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 متعدّدة لالتقاط أصناف مختلفة من ...

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)، فإن التحكّم يعود إلى الملف المستدعي مرة أخرى. ...

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