الفرق بين المراجعتين لصفحة: «PHP/compact»

من موسوعة حسوب
< PHP
ط ←‏الوصف: إضافة رابط
ط نقل عبد اللطيف ايمش صفحة PHP/Function/compact إلى PHP/compact: إعادة هيكلة التوثيق
 
(4 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 4: سطر 4:
تنشئ الدالة <code>compact()‎</code> مصفوفة تحتوي على متغيرات وقيمها.
تنشئ الدالة <code>compact()‎</code> مصفوفة تحتوي على متغيرات وقيمها.


= الوصف =
== الوصف ==
<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
array compact ( mixed $varname1 [, mixed $... ] )
array compact ( mixed $varname1 [, mixed $... ] )
سطر 11: سطر 11:
لكل من هذه المعاملات، تبحث الدالة <code>compact()‎</code> عن متغير بهذا الاسم في جدول الرموز (symbol table) الحالي وتضيفه إلى المصفوفة المُخرَجة بحيث يصبح اسم المتغير هو المفتاح وتصبح محتويات المتغير قيمة ذلك المفتاح. باختصار، تعمل هذه الدالة بعكس الدالة <code>[[PHP/Functions/extract|extract()‎]]</code>.
لكل من هذه المعاملات، تبحث الدالة <code>compact()‎</code> عن متغير بهذا الاسم في جدول الرموز (symbol table) الحالي وتضيفه إلى المصفوفة المُخرَجة بحيث يصبح اسم المتغير هو المفتاح وتصبح محتويات المتغير قيمة ذلك المفتاح. باختصار، تعمل هذه الدالة بعكس الدالة <code>[[PHP/Functions/extract|extract()‎]]</code>.


وتتخطى الدالة أية [[PHP/Types/string|سلاسل نصية (string)]] لم تُضبَط قيمتها.
وتتخطى الدالة أية [[PHP/string|سلاسل نصية (string)]] لم تُضبَط قيمتها.


= المعاملات =
== المعاملات ==


=== <code>varname1</code> ===
=== <code>varname1</code> ===
تأخذ الدالة <code>compact()‎</code> عددًا متغيرًا من المعاملات. يمكن أن يكون كل معامل عبارة عن سلسلة نصية (string) تحتوي على اسم المتغير أو مصفوفة من أسماء المتغيرات. كما يمكن أن تحتوي المصفوفة على مصفوفات أخرى من أسماء المتغيرات بداخلها؛ في هذه الحالة تعالجها الدالة <code>compact()‎</code> تكراريًا (recursively).
تأخذ الدالة <code>compact()‎</code> عددًا متغيرًا من المعاملات. يمكن أن يكون كل معامل عبارة عن سلسلة نصية (string) تحتوي على اسم المتغير أو مصفوفة من أسماء المتغيرات. كما يمكن أن تحتوي المصفوفة على مصفوفات أخرى من أسماء المتغيرات بداخلها؛ في هذه الحالة تعالجها الدالة <code>compact()‎</code> تكراريًا (recursively).


= القيم المعادة =
== القيم المعادة ==
تُعيد الدالة <code>compact()‎</code> المصفوفة المُخرجة مع إضافة كافة المتغيرات إليها.
تُعيد الدالة <code>compact()‎</code> المصفوفة المُخرجة مع إضافة كافة المتغيرات إليها.


= أمثلة =
== أمثلة ==
المثال 1: مثال على الدالة <code>compact()‎</code><syntaxhighlight lang="php">
المثال 1: مثال على الدالة <code>compact()‎</code><syntaxhighlight lang="php">
<?php
<?php
سطر 42: سطر 42:
</syntaxhighlight>
</syntaxhighlight>


= ملاحظات =
== ملاحظات ==
ملاحظة:نظرًا لعدم استخدام [[PHP/Variables/variable|المتغيرات المتغيرة]] مع [[PHP/Variables/predefined|المصفوفات ذوات النطاق العام العالي Superglobal]] في الدوال من PHP، فلا يسمح بتمرير مصفوفات Superglobal إلى الدالة <code>compact()‎‎</code>.
ملاحظة: نظرًا لعدم استخدام [[PHP/variable variables|المتغيرات المتغيرة]] مع [[PHP/predefined variables|المصفوفات ذوات النطاق العام العالي Superglobal]] في الدوال من PHP، فلا يسمح بتمرير مصفوفات Superglobal إلى الدالة <code>compact()‎‎</code>.


= انظر أيضًا =
== انظر أيضًا ==
* الدالة <code>[[PHP/Functions/extract|extract()‎]]</code>: استيراد متغيرات في جدول الرموز الحالي من مصفوفة.
* الدالة <code>[[PHP/Functions/extract|extract()‎]]</code>: استيراد متغيرات في جدول الرموز الحالي من مصفوفة.


= مصادر =
== مصادر ==
* [http://php.net/manual/en/function.compact.php صفحة الدالة compact‎ في توثيق PHP الرسمي].
* [http://php.net/manual/en/function.compact.php صفحة الدالة compact‎ في توثيق PHP الرسمي].
[[تصنيف:PHP]]
[[تصنيف:PHP]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP Array]]
[[تصنيف:PHP Array]]

المراجعة الحالية بتاريخ 03:49، 4 أبريل 2018

(PHP 4, PHP 5, PHP 7)

تنشئ الدالة compact()‎ مصفوفة تحتوي على متغيرات وقيمها.

الوصف

array compact ( mixed $varname1 [, mixed $... ] )

تنشئ هذه الدالة مصفوفةً تحتوي على متغيرات وقيمها.

لكل من هذه المعاملات، تبحث الدالة compact()‎ عن متغير بهذا الاسم في جدول الرموز (symbol table) الحالي وتضيفه إلى المصفوفة المُخرَجة بحيث يصبح اسم المتغير هو المفتاح وتصبح محتويات المتغير قيمة ذلك المفتاح. باختصار، تعمل هذه الدالة بعكس الدالة extract()‎.

وتتخطى الدالة أية سلاسل نصية (string) لم تُضبَط قيمتها.

المعاملات

varname1

تأخذ الدالة compact()‎ عددًا متغيرًا من المعاملات. يمكن أن يكون كل معامل عبارة عن سلسلة نصية (string) تحتوي على اسم المتغير أو مصفوفة من أسماء المتغيرات. كما يمكن أن تحتوي المصفوفة على مصفوفات أخرى من أسماء المتغيرات بداخلها؛ في هذه الحالة تعالجها الدالة compact()‎ تكراريًا (recursively).

القيم المعادة

تُعيد الدالة compact()‎ المصفوفة المُخرجة مع إضافة كافة المتغيرات إليها.

أمثلة

المثال 1: مثال على الدالة compact()‎

<?php
$city  = "San Francisco";
$state = "CA";
$event = "SIGGRAPH";

$location_vars = array("city", "state");

$result = compact("event", "nothing_here", $location_vars);
print_r($result);
?>

سوف تكون مُخرجات المثال أعلاه كالتالي:

Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)

ملاحظات

ملاحظة: نظرًا لعدم استخدام المتغيرات المتغيرة مع المصفوفات ذوات النطاق العام العالي Superglobal في الدوال من PHP، فلا يسمح بتمرير مصفوفات Superglobal إلى الدالة compact()‎‎.

انظر أيضًا

  • الدالة extract()‎: استيراد متغيرات في جدول الرموز الحالي من مصفوفة.

مصادر