الفرق بين المراجعتين لصفحة: «PHP/compact»
ط ←الوصف: إضافة رابط |
ط تصحيح العناوين |
||
سطر 4: | سطر 4: | ||
تنشئ الدالة <code>compact()</code> مصفوفة تحتوي على متغيرات وقيمها. | تنشئ الدالة <code>compact()</code> مصفوفة تحتوي على متغيرات وقيمها. | ||
= الوصف = | == الوصف == | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
array compact ( mixed $varname1 [, mixed $... ] ) | array compact ( mixed $varname1 [, mixed $... ] ) | ||
سطر 13: | سطر 13: | ||
وتتخطى الدالة أية [[PHP/Types/string|سلاسل نصية (string)]] لم تُضبَط قيمتها. | وتتخطى الدالة أية [[PHP/Types/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/Variables/variable|المتغيرات المتغيرة]] مع [[PHP/Variables/predefined|المصفوفات ذوات النطاق العام العالي 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:37، 28 مارس 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()
: استيراد متغيرات في جدول الرموز الحالي من مصفوفة.