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

من موسوعة حسوب
< PHP
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:<code>array_rand()‎</code>}}</noinclude> (PHP 4, PHP 5, PHP 7) تختار الدالة <code>array_rand()</code>‎ واحدًا أو أكث...'
 
ط نقل عبد اللطيف ايمش صفحة PHP/Function/array-rand إلى PHP/array rand: إعادة هيكلة التوثيق
 
(6 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 18: سطر 18:


== القيم المعادة ==
== القيم المعادة ==
عند اختيار إدخال واحد فقط، تُعيد الدالة <code>array_rand()</code>‎ مفتاحًا لعنصرٍ واحد عشوائيًا. خلاف ذلك، ستعاد مصفوفة مفاتيح عناصر عشوائية. وذلك عن طريق اختيار مفاتيح عناصر عشوائية من المصفوفة وكذلك قيم هذه العناصر. ستؤدي محاولة اختيار عناصر أكثر من الموجودة في المصفوفة إلى حدوث خطأ من المستوى <code>E_WARNING</code>، وستُعاد القيمة <code>NULL</code>.
عند اختيار إدخال واحد فقط، تُعيد الدالة <code>array_rand()</code>‎ مفتاحًا لعنصرٍ واحد عشوائيًا. خلاف ذلك، ستعاد مصفوفة مفاتيح عناصر عشوائية. وذلك عن طريق اختيار مفاتيح عناصر عشوائية من المصفوفة وكذلك قيم هذه العناصر. ستؤدي محاولة اختيار عناصر أكثر من الموجودة في المصفوفة إلى حدوث خطأ من المستوى <code>[[PHP/errors/errorfunc.constants|E_WARNING]]</code>، وستُعاد القيمة <code>NULL</code>.


== سجل التغييرات ==
== سجل التغييرات ==
سطر 26: سطر 26:
|-
|-
|7.1.0
|7.1.0
|[[PHP/migration71.incompatible.php#migration71.incompatible.rand-srand-aliases|تغيير خوارزمية العشوائية الداخلية لاستخدام مولد أرقام]] [http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html Mersenne Twister] العشوائي بدلاً من دالة <code>libc rand</code>.
|[[PHP/migration71.incompatible.php#migration71.incompatible.rand_srand_aliases|تغيير خوارزمية العشوائية الداخلية لاستخدام مولد أرقام]] [http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html Mersenne Twister] العشوائي بدلاً من دالة <code>libc rand</code>.
|-
|-
|5.2.10
|5.2.10
سطر 33: سطر 33:


== أمثلة ==
== أمثلة ==
 
المثال 1: مثال على الدالة <code>array_rand()‎</code><syntaxhighlight lang="php">
=== المثال 1: مثال على الدالة <code>array_rand()‎</code> ===
<syntaxhighlight lang="php">
<?php
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
سطر 45: سطر 43:


== انظر أيضًا ==
== انظر أيضًا ==
* <code>[[PHP/Function/shuffle|shuffle()‎]]</code>: خلط عناصر مصفوفة.
* <code>[[PHP/shuffle|shuffle()‎]]</code>: خلط عناصر مصفوفة.


== مصادر ==
== مصادر ==
<span> </span>
* [http://php.net/manual/en/function.array-rand.php صفحة الدالة array_rand في توثيق PHP الرسمي].
* [http://php.net/manual/en/function.array-rand.php صفحة الدالة array_rand()‎ في توثيق PHP الرسمي].
[[تصنيف:PHP]]
[[تصنيف:PHP]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP Array]]
[[تصنيف:PHP Array]]

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

(PHP 4, PHP 5, PHP 7)

تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا.

الوصف

mixed array_rand ( array $array [, int $num = 1 ] )

تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا، وتعيد مفتاح (أو مفاتيح) العناصر عشوائيًا. وتستخدم مولد أرقام عشوائية زائفة غير مناسب لأغراض التشفير.

المعاملات

array

المصفوفة المُدخلة.

num

يحدد عدد العناصر التي يجب اختيارها عشوائيًا.

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

عند اختيار إدخال واحد فقط، تُعيد الدالة array_rand()‎ مفتاحًا لعنصرٍ واحد عشوائيًا. خلاف ذلك، ستعاد مصفوفة مفاتيح عناصر عشوائية. وذلك عن طريق اختيار مفاتيح عناصر عشوائية من المصفوفة وكذلك قيم هذه العناصر. ستؤدي محاولة اختيار عناصر أكثر من الموجودة في المصفوفة إلى حدوث خطأ من المستوى E_WARNING، وستُعاد القيمة NULL.

سجل التغييرات

الإصدار الوصف
7.1.0 تغيير خوارزمية العشوائية الداخلية لاستخدام مولد أرقام Mersenne Twister العشوائي بدلاً من دالة libc rand.
5.2.10 إيقاف خلط مصفوفة المفاتيح الناتجة

أمثلة

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

<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>

انظر أيضًا

مصادر