فب هي لغة البرمجة الشعبية التي تستخدم على نطاق واسع لإنشاء صفحات الويب الديناميكية. واحدة من السمات الرئيسية ل فب تعمل مع المصفوفات. في فب ، يمكنك إنشاء صفائف ، وملء لهم البيانات ، ومعالجة هذه المعلومات باستخدام وظائف.
في كثير من الأحيان هناك حاجة لتمرير صفيف إلى وظيفة لأداء عمليات معينة. هناك عدة طرق للقيام بذلك في فب.
أسهل طريقة هي تمرير صفيف إلى وظيفة كوسيطة. للقيام بذلك ، حدد نوع الوسيطة في تعريف الوظيفة وتمرير مصفوفة عند استدعاء الوظيفة. على سبيل المثال:
وظيفة بروسيساراي (صفيف-أر) {
// تنفيذ عمليات الصفيف
}
my مياراي = [1 ، 2 ، 3];
بروسيساراي (my ميراي);
عند تمرير مصفوفة إلى دالة كوسيطة ، يمكن أن يكون للمصفوفة التي تم تمريرها أي بنية وعمق تداخل. داخل الوظيفة ، يمكنك الوصول إلى عناصر المصفوفة وتنفيذ إجراءات مختلفة معهم.
- كيفية تمرير صفيف إلى وظيفة فب
- 1. إرسال صفيف حسب المرجع
- 2. تمرير صفيف حسب القيمة
- 3. تمرير صفائف متعددة إلى وظيفة
- شرح بسيط
- أمثلة
- ما يصل إلى حجم المصفوفات التي يمكن نقلها
- المشاكل التي واجهتها عند نقل المصفوفات
- سؤال وجواب
كيفية تمرير صفيف إلى وظيفة فب
فب يسمح لك لتمرير المصفوفات إلى وظائف ، مما يجعل من الممكن لتبسيط وتوحيد التعليمات البرمجية. في هذا القسم ، وسوف ننظر في الطرق الأساسية لتمرير المصفوفات إلى وظائف فب.
1. إرسال صفيف حسب المرجع
افتراضيا ، عند تمرير وسيطة إلى وظيفة ، فب نسخ قيمة هذه الوسيطة. ومع ذلك ، إذا كنت بحاجة إلى تمرير مصفوفة إلى وظيفة وتغييرها داخل الوظيفة ، فيجب عليك استخدام تمرير المصفوفة بالرجوع إليها.
لتمرير صفيف بالرجوع ، أضف الرمز & قبل وسيطة الدالة:
تعديل الدالة (&array صفيف) {
// تغيير المصفوفة
array صفيف [0] = 'تغير';
}
my مياراي = ['المعنى الأصلي لل'];
موديفياري(my مياري);
صدى my مياراي [0]; // النواتج 'تغيرت'
2. تمرير صفيف حسب القيمة
إذا لم تكن بحاجة إلى تغيير مصفوفة المصدر داخل الوظيفة ، فيمكنك تمريرها حسب القيمة لتجنب التغييرات غير المرغوب فيها.:
وظيفة ديسبلاياري (array صفيف) {
// إخراج صفيف
فوريش (array صفيف كعنصر element) {
صدى element عنصر . ' ';
}
}
my مياراي = ['العنصر 1' ، 'العنصر 2' ، 'العنصر 3'];
ديسبلايراي (my مياراي); // النواتج 'العنصر 1 العنصر 2 العنصر 3'
3. تمرير صفائف متعددة إلى
وظيفة فب كما يسمح لك لتمرير صفائف متعددة إلى وظيفة. للقيام بذلك ، حدد جميع المصفوفات الضرورية كوسيطات للوظيفة:
مقارنة الدالةمصفوفات (arra مصفوفة 1 ، arra مصفوفة 2) {
// مقارنة المصفوفات
إذا (arra صفيف 1 ===arra صفيف 2) {
الصدى 'صفائف متساوية';
} آخر {
الصدى 'المصفوفات ليست متساوية';
}
}
1 = ['أ' ، 'ب' ، 'ج'];
2 = ['أ' ، 'ب' ، 'ج'];
مقارنة المصفوفات (my مصفوفات 1 ،my مصفوفات 2) ؛ / / المخرجات 'المصفوفات متساوية'
الآن أنت تعرف الطرق الأساسية لتمرير المصفوفات إلى وظائف فب. هذا يسمح لك لجعل التعليمات البرمجية الخاصة بك أكثر كفاءة وقابلة للقراءة.
شرح بسيط
تمرير صفيف إلى وظيفة في فب بسيطة جدا ومريحة. هذا يسمح لنا بتمرير مجموعة من القيم في وقت واحد ومعالجتها داخل دالة.
لتمرير صفيف إلى وظيفة ، تحتاج أولا إلى إعلان وظيفة مع معلمة تقبل المصفوفة. يتم تحديد معلمة الصفيف بين قوسين بعد اسم الوظيفة.
على سبيل المثال ، إذا كان لدينا وظيفة تسمى "برينتراي" التي ينبغي أن تقبل صفيف ، ثم يمكن الإعلان عنها على النحو التالي:
وظيفة برينتراي ($آر) {
// تتم معالجة المصفوفة هنا
}
بعد إعلان وظيفة ، يمكنك الاتصال به وتمرير مجموعة كوسيطة:
$array = [1, 2, 3, 4, 5];
برينتراي (array صفيف);
داخل الوظيفة ، يمكنك الوصول إلى المصفوفة التي تم تمريرها باستخدام اسم المعلمة التي تم تحديدها عند الإعلان عن الوظيفة.
على سبيل المثال ، لإخراج جميع عناصر المصفوفة داخل دالة ، يمكنك استخدام حلقة:
وظيفة برينتراي ($آر) {
فوريش (ar أر كما element عنصر) {
صدى element عنصر . ' ';
}
}
الآن ، استدعاء وظيفة "برينتراي" وتمرير مجموعة ، وسوف نحصل على إخراج جميع عناصر المصفوفة.
يمكن أن يكون تمرير مصفوفة إلى وظيفة مفيدا جدا عند استخدام نفس المصفوفة عدة مرات في أماكن مختلفة في البرنامج. يسمح لنا بتجنب تكرار الكود وجعل البرنامج أكثر معيارية وقابلة للقراءة.
أمثلة
لنلق نظرة على بعض الأمثلة للعمل مع تمرير مصفوفة إلى دالة:
- }
فوريش (array صفيف كعنصر element) {
- النتيجة [] = - العنصر * - العنصر;
}
العودة result النتيجة;
}
استدعاء وظيفة:
ar آر = [1, 2, 3, 4, 5];
| برينتراي (squ سكويردار) ؛ / / المخرجات: 1, 4, 9, 16, 25, | ||
|---|---|---|
| ما يصل إلى حجم المصفوفات التي يمكن نقلها | إذا كانت المصفوفة كبيرة جدا بحيث لا يمكن تمريرها بسهولة إلى وظيفة ، فيمكنك بدلا من ذلك تمرير إشارة فقط إلى المصفوفة والعمل معها داخل الوظيفة. هذا يحفظ الذاكرة لأن المرجع يأخذ مساحة أقل بكثير من الصفيف نفسه. | المشاكل التي واجهتها عند نقل المصفوفات |