מערכים-101
מערכים מהווים את אחד הכלים החשובים ביותר והבסיסיים ביותר לכל מפתח. מערך מאפשר שמירת מידע ואופן ניהול מידע מרמה פשוטה למדי ועד רמה מורכבת יותר. ישנם מערכים אינדקסיקליים ומערכים עם מפתחות (keys) עצמאיים. אנחנו נתחיל ברמה הפשוטה ביותר של מערכים ונעבור לדוגמה של מערך רב-מימדי.
מערך פשוט
נכתוב מערך פשוט:
$names = array('John','Simon','Nick');
כך נראה מערך פשוט. יצרנו מישתנה המכיל מערך של שמות. על מנת לראות את תוכן המערך נכתוב כך:
print_r($names);
והתוצאה תיראה כך :
Array ( [0] => John [1] => Simon [2] => Nick )
קיבלנו מערך (array) ובו כל השמות שלנו. הערכים בסוגריים המרובעות הן המפתחות. מערך אינדקסיקלי ישים באופן אוטומטי את המפתחות כמספרים המתחילים תמיד באפס. כך במקום לכתוב כל שם כמשתנה נפרד הנדרש לאקו משלו, ייצרנו דרך יעילה יותר להתייחס לריבוי מישתנים.
אבל מה קורה כשנרצה מערך מורכב יותר ובו מישתנים בעלי משמעות, ולא רק מספרים עוקבים? במקרה כזה נוכל לכתוב כך:
$names = array('name1' =>'John','name2' =>'Simon','name3' =>'Nick');
Array ( [name1] => John [name2] => Simon [name3] => Nick )
עתה כל המפתחות ניתנים לשליטתנו.
מערך רב-מימדי (multi dimentional array)
מערך רב-מימדי מאפשר לנו לאחסון מידע מורכב אף יותר המדמה בסיס נתונים. נכתוב מערך שכזה ונשים לב שמדובר במערך בתוך מערך (עד כמה שנזדקק).
$people = array( "person1" => array("first name" => "John","last name" => "Taylor", "age" => 45), "person2" => array("first name" => "Simon","last name" => "Le-bon", "age" => 50), "person3" => array("first name" => "Nick","last name" => "Roads", "age" => 43) );
מערך זה מכיל כמה אנשים וכל בן-אדם מכיל את נתוניו שלו כמערך פנימי. על מנת לפלוט את הנתונים למסך נשתמש בלופ האידאלי ביותר למערכים: foreach loop.
foreach ($people as $person) { foreach($person as $key => $value) { echo "$key: $value "; } }
שימו לב לכך שמשום שמדובר במערך רב מימדי אנו עושים לופ בתוך לופ על מנת להדפיס את הנתונים. וכך יראו הנתונים על המסך:
first name: John last name: Taylor age: 45 first name: Simon last name: Le-bon age: 50 first name: Nick last name: Roads age: 43
ובזה סיימנו את המדריך. הייתי מאד ממליץ למי לרק מתחיל עם php לגשת לmanual ולבדוק את כל הפונקציות הקיימות לגבי מערכים. ניתן לעשות מניפולציות שונות על מערכים ובכך להפוך את העבודה עם מערכים לגמישה יותר ולבעלת שליטה טובה יותר.