اليوم ان شاء الله سوف نتتطرق الى المصفوفات المصفوفة في PHP تعني جدول أي ان الهدف اﻻساسي منها هو تنطيم المعلومات و اعطائها موقع قابل للتحديد يعني اعطائها احداثيات يمكن من خلالها الوصول الى المعلومات بكل سلاسة نستطيع تكوين مصفوفة باستعمال دالتين ()array و ()list لتضح الرؤية كالعادة نبدأ بمثال تطبيقي :
<?php
$data = array('E machine','HP','Dell','IBM','Acer') ;
print_r($data) ;
?>
النتيجة :
Array ( [0] => E machine [1] => HP [2] => Dell [3] => IBM [4] => Acer )
الدالة print_r تقوم بطباعة المصفوفة كاملة أي المعامل و نتيجته : المعامل هو الرقم الموجود بين المعقوفتين [] و النتجة التي يشر اليها بالسهم <= مثلا ادا اردت طباعة القيمة IBM فيكفي تحديد معاملها في المصفوفة data ليتم طباعته مثال على دالك :
<?php
$data = array('E machine','HP','Dell','IBM','Acer') ;
print $data['3'] ;
?>
النتيجة كما سبق الدكر هي IBM .
ملاحظة مهمة : العد بالنسبة للمصفوفات يبداء من القيمة 0 .
ننتقل الى دالة list تقوم بتكوين مصفوفات كدالك وتستعملا غالبا في البر مجة المتقدمة اما مع دوال قواعد البيانات او دوال التحكم بالملفات او مع مكتبة غرافيك الخاصة ب php …
سأتعمق أكثر في هده الدالة حين نصل الى البرمجة المتقدمة .
الطريقة اﻻكثر انتشارا بين المبرنجين بعد Array وهي تكوين مصفوفة يدويا مثال سريع :
<?php
$a[0] = "abc";
$a[1] = "def";
$a[2] = "ghi";
print $a[2] ;
?>
النتيجة ghi
تجدر اﻻشارة الى ان هناك عدة دوال مرتبطة مباشرة بالمصفوفات هده الدوال تقوم بتعامل مع المعلومات التي تحملها المصفوفة مثلا لتنظيم المعلومات او المقارنة بينها او بالبحث عنها …
سندكر أمثلة سريع لهده الدوال :
1- array_count_values : تقوم بعدعدد المرات التي تكررت في المصفوفة .
<?php
$array = array (1, "hello", 1, "world", "hello");
array_count_values ($array);
?>
النتيجة
array (1=>2, "hello"=>2, "world"=>1)
2- array_diff :تقوم بتحديد اﻻختلاف بين مصفوفتين .
<?php
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", "yellow", "red");
$result = array_diff ($array1, $array2);
?>
النتيجة result
array ("blue");
3-array_intersect : تقوم بتحديد النقط المشتركة بين مصفوفتين عكس array_diff .
<?php
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", "yellow", "red");
$result = array_intersect ($array1, $array2);
?>
النتيجة result
array ("a" => "green", "red");
وأيضا Array_walk() , array_values , array_unshift ,array_unique , array_sum , array_splice ,array_shift , array_reverse ,array_rand …
في اﻻخير اود ان اشير اﻻ اني في اﻻمثلة السالفة الدكر قمت بوضع مصفوفات بسيطة او مصفوفة دات بعد واحد تجدر اﻻشارة الى اننا نستطيع وضع مصفوفة مركبة او دات عدت ابعاد ادا اقتضى اﻻمر داك وهدا مثال توضيحي :
<?php
$a = array(
"apple" => array(
"color" => "red",
"taste" => "sweet",
"shape" => "round"
),
"orange" => array(
"color" => "orange",
"taste" => "tart",
"shape" => "round"
),
"banana" => array(
"color" => "yellow",
"taste" => "paste-y",
"shape" => "banana-shaped"
)
);
echo $a["orange"]["taste"];
?>
النتيجة : tart
في رعاية الله
0 تعليقات