لغة php : المصفوفات arrays
تستخدم المصفوفة لتخزين بيانات متعددة في متغير واحد .
ماهي المصفوفة Array ؟
المصفوفة هي متغير خاص حيث يمكنه تخزين قيمة أو أكثر في نفس الوقت .
اذا كان لديك قائمة من العناصر ( كتب على سبيل المثال ) عندها يمكنك تخزينهم في متغير واحد .
مثال
$book1="كتاب البرمجة"; $book2="كتاب الحاسوب"; $book3=" قصص المغامرات";
ولكن ماذا لو أردت أن تجلب كتاب معين من بين هذه الكتب وماذا لو كان لديك أكثر من 300 كتاب ليس فقط 3 ؟ ماذا ينبغي أن تفعل ؟
أفضل حل هو إنشاء مصفوفة array()
يمكن للمصفوفة أن تحمل جميع القيم التي لديك وأيضاً جميع المتغيرات التي لديك بمتغير واحد فقط ويمكنك استدعاء القيمة التي تريد من خلال ذكر اسمها فقط او ترتيبها .
يحتوي كل عنصر في المصفوفة على ID خاص به وبذلك يمكن استدعائه بسهولة .
يوجد 3 أنواع للمصفوفات في لغة PHP :
- المصفوفة الرقمية : تحتوي على فهرسة رقمية .
- مصفوفة التعيين : تتكون من مجموعة ID وكل ID يحمل قيمته الخاصة .
- المصفوفة المتعددة الخيارات : تحتوي على مصفوفة أو أكثر من مصفوفة .
المصفوفة الرقمية
تخزن المصفوفة الرقمية كل عنصر من المصفوفة برقم مفهرس .
هناك طريقتين لإنشاء مصفوفة
1. في هذا المثال تم تعيين الفهرسة تلقائياً (تبدأ الفهرسة من الرقم 0) .
$ myBooks = array("كتاب البرمجة","كتاب الحاسوب"," قصص المغامرات");
2. في المثال التالي سيتم إنشاء مصفوفة وتعيين الفهرسة يدوياً .
$myBooks [0]=" كتاب البرمجة"; $myBooks [1]=" كتاب الحاسوب"; $myBooks [2]=" قصص المغامرات";
مثال
في المثال التالي سيتم اختيار قيمة معينة من المصفوفة .
<?php $myBooks [0]=" كتاب البرمجة"; $myBooks [1]=" كتاب الحاسوب"; $myBooks [2]=" قصص المغامرات"; echo "يعتبر " . $myBooks[0] . " و " . $myBooks[1] . " من أفضل الكتب العلمية"; ?>
ستظهر النتيجة على المتصفح :
يعتبر كتاب البرمجة و كتاب الحاسوب من أفضل الكتب العلمية
مصفوفة التعيين
يمكن تحديد في مصفوفة التعيين كل قيمة مع رقم ID الخاص بها .
ليس من الجيد استخدام المصفوفة الرقمية عند طلب قيمة معينة من المصفوفة لذلك أفضل طريقة هي مصفوفة التعيين .
مثال 1
في هذا المثال سيتم تحديد قيم محددة اي سيتم تحديد اسم الشخص مع عمره .
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);
مثال 2
يعتبر هذا المثال مماثل للمثال 1 ولكن يظهر طريقة أخرى لإنشاء المصفوفة .
$ages['Peter'] = "32"; $ages['Quagmire'] = "30"; $ages['Joe'] = "34";
يمكن استخدام ID في كود المثال التالي :
<?php $ages['Peter'] = "32"; $ages['Quagmire'] = "30"; $ages['Joe'] = "34"; echo "Peter is " . $ages['Peter'] . " years old."; ?>
ستظهر النتيجة على المتصفح
Peter is 32 years old.
المصفوفة المتعددة
يمكن لأي عنصر في المصفوفة المتعددة الأصلية أن يصبح مصفوفة فرعية وأيضاً أي عنصر في المصفوفة الفرعية يمكن أن يصبح مصفوفة مستقلة وهكذا .
في المثال التالي سنقوم بإنشاء مصفوفة متعددة و تلقائياً محدد بـآي دي ID خاص .
$families = array ( "Griffin"=>array ( "Peter", "Lois", "Megan" ), "Quagmire"=>array ( "Glenn" ), "Brown"=>array ( "Cleveland", "Loretta", "Junior" ) );
سيصبح شكل المصفوفة السابقة كالتالي في حال تم كتابتها كنتيجة على التصفح .
Array ( [Griffin] => Array ( [0] => Peter [1] => Lois [2] => Megan ) [Quagmire] => Array ( [0] => Glenn ) [Brown] => Array ( [0] => Cleveland [1] => Loretta [2] => Junior ))
مثال 2
الآن سنقوم باستدعاء أحد عناصر المصفوفة السابقة في :
<?php echo "Is " . $families['Griffin'][2] . " a part of the Griffin family?"; ?>
ستظهر النتيجة على المتصفح
Is Megan a part of the Griffin family?
لغة php : الوظائف و الدوال
تستمد لغة PHP قوتها من خلال الأكواد الوظيفية functions
هناك أكثر من 700 كود وظيفي معرّف مسبقاً من خلال اللغة نفسها .
الأكواد الوظيفية المعرّفة مسبقاً
لمراجع كاملة عن الكواد الوظيفية المعرّفة مسبقاً يمكنك زيارة مرجعنا الشامل عن PHP
الدوال PHP
سندرس في هذا الدرس كيفية إنشاء الكود الوظيفي الخاص بك .
يمكنك وضعه ضمن وظيفة للحفاظ على الكود من ظهوره عند تحميل الصفحة .
يمكن إظهار function من خلال استدعائه .
يمكنك استدعائه في أي مكان في الصفحة .
إنشاء كود وظيفي PHP
يمكن إظهار function من خلال استدعائه .
التركيبة
function functionName()
{
code to be executed;
}
بعض النصائح عند إنشاء الكود الوظيفي
- ضع اسم مناسب للكود الوظيفي بحيث يشرح ماهية عمل ذلك الكود .
- يمكن أن يبدأ اسم الكود بأحرف أو اشارة _ ولكن ليس رقم .
مثال
<html>
<body>
<?php
function writeName()
{
echo "المعهد العربي للبرمجة";
}
echo "مرحباً بكم في ";
writeName();
?>
</body>
</html>
النتيجة
مرحباً بكم في المعهد العربي للبرمجة
إضافة parameters
لإضافة فعالية إضافية الى الكود الوظيفي يمكنك اضافة parameters . يعتبر parameters مثل المتغير تماماً .
يتم تحديد parameters بعد اسم function داخل الأقواس .
مثال 1
سيكتب المثال التالي أسماء مختلفة ولكن الكنية مختلفة .
<html>
<body>
<?php
function writeName($fname)
{
echo $fname . " الصافي .<br />";
}
echo "اسمي ";
writeName("محمد");
echo "اسم أخي ";
writeName("صالح");
echo "اسم أختي ";
writeName("منى");
?>
</body>
</html>
النتيجة
اسمي محمد الصافي .
اسم أخي صالح الصافي .
اسم أختي منى الصافي .
مثال 2
يحتوي المثال على اثنين من parameters :
<html>
<body>
<?php
function writeName($fname, $punctuation)
{
echo $fname . " الصافي " . $punctuation . "<br />";
}
echo "اسمي ";
writeName("محمد",".");
echo "اسم أخي ";
writeName("صالح","!");
echo "اسم أختي ";
writeName("منى","?")
?>
</body>
</html>
النتيجة
اسمي محمد الصافي .
اسم أخي صالح الصافي !
اسم أختي منى الصافي ؟
ارجاع القيم Return values
لإرجاع قيمة من الكود الوظيفي يمكن استخدام التعبير return
مثال
<html>
<body>
<?php
function add($x,$y)
{
$total=$x+$y;
return $total;
}
echo "1 + 16 = " . add(1,16);
?>
</body>
</html>
النتيجة
1 + 16 = 17