top of page

מבוא לשפת שרת - php


שפת שרת היא שפה אשר השרת קורה אותה ומבצע את הפקודות,

בשונה משפת לקוח, בה התוכנה של מחשב הלקוח, כמו הדפדפן, עוברת על הקוד ופועלת לפיו.

שפת php היא שפת שרת, הרצה על שרתי אפצ'י - לינוקס (הזולים משמעותים משרתי וינדוס).

נעבור בקצרה על מספר מאפיינים של השפה.

שפה זו התחילה כשפה עם פונקציות, בשפה זו למשתנה לא מוגדר טיפוס מסויים ואפשר להשים מחרוזת במשתנה שהחזיק מספר בלי שום בעיה.

אחרי זמן היא התחילה לתמוך בתכנות מונחה עצמים, ויש בה דמיון בסינטקס (תחביר - מילים שמורות בשפה) לשפת ג'אווה.

ישנם שפות בהם האופרטור פלוס (+) משמש בנוסף לחיבור גם לשירשור מחרוזות טקסט.

והאופרטור נקודה (.) משתמש כפניה למשתנה או שיטה הקשורה לאובייקט או למחלקה (סטטי).

לדוגמה: car.name="big" + "car";

ב- PHP זה קצת שונה אבל העיקרון אותו דבר.

לשירשור מחרוזות נשתמש באופרטור נקודה (.),

כדי להפנות לרפרנס של מחלקה נשתמש באופרטור חץ (המורכב משני תווים <- ).

לדוגמה: car->name="big" . "car";

פניה לרפרנס סטטי של מחלקה נעשה באמצעות אופרטור נקודיים כפולים (::).

לדוגמה: car::count=1;

כל משתנה מתחיל בסימן דולר ($), למעט מקרים מסויימים שהמשתנה מתייחס לאובייקט.

וכל קוד php, מתחיל:

php?>

ומסתיים ב:

<?

קיצור נחמד לפקודת ההדפסה echo:

קוד הנכתב בין בין הבלוק שמתחיל:

=?>

ומסתיים כרגיל

<?

בתנאים ולולאות ישנו תחביר מעניין נוסף על הבלוק הרגיל של מחרוזית שהוא סוגריים מסולסלות {}.

ניתן לכתוב:

<?php if ($a == 5): ?> A is equal to 5 <?php endif; ?>

כך שבמקום הסוגר המסולסל הראשון (}), המראה על פתיחת הבלוק, נרשום את האופרטור נקודתיים (:)

ובסיום הבלוק במקום הסוגריים השני ({), נרשום את המילה end ובנוסף ללא רווח if או for וכדומה בהתאמה.

זה במיוחד טוב וקריא כשאנחנו משתמשים בבלוקים של php בתוך קוד של שפת לקוח ומעוניינים שהשפת לקוח תרשם משפר פעמים בלולאה או לפי תנאי מסויים, כך שאנחנו רוצים להיזכר שכן מסתיימת פקודה כלשהי.

לגבי מערכים ישנו מערך רגיל (array), המקבל ערכים לפי סדר כשהמפתח שלהם הוא מספרי ומתחיל מ-0.

ויש מערך שיוכי (אסיוסטיבי), המקבל ערכים בצורה של זוג אחרי זוג, כשזוג כולל את המפתח שהוא מחרוזת וכך קל יותר לדעת איזה מפתח מכוון לאיזה ערך (למשל, תפוז מחזיק בערך כתום וכדומה).

למעבר על מערך כזה, ניתן להשתמש בלולאת foreach.

Foreach($collect as $v)

מנת לערוך איטרציות על כל הערכים באברי המערך

או

Foreach($collect as $k=>$v)

על מנת לערוך איטרציות גם על המפתחות

להדפסת המערך ניתן להשתמש בפונקציה print_r, המקבלת פרמטר שהוא שם המערך.

לדיבוג, מומלץ להשתמש בפקודה var_dump() אשר נותנת מידע על המשתנה שאנחנו בודקים כפרמטר ולפי ההדפסה נוכל לראות אם הוא מחזיק בערך הנכון, אותו הוא אמור לקבל לפי החישוב שלנו.

במידה שמתרחשת בעיה, מומלץ להשתמש בפקודה Die() על מנת לנתק קשר עם הלקוח (שהוא הגולש בדפדפן ברוב המקרים).

על מנת לייבא קובץ נשתמש בפונקציה Include(), או בפונקציה Require() על מנת לחייב לתוכנית לרוץ רק אם הקובץ אכן התווסף.

על מנת למנוע כפילות, שיתכן שכבר הובא קובץ זה, עדיף להשתמש בפונקציות: Include_once() או Require_once() בהתאמה, אשר מביאות את הקובץ רק בתנאי שלא הובא קודם לכן.

מצד שני זה דורש כל בפעם לבצע בדיקה ולכן מבחינת ביצועים וחיסכון במשאבים, עדיף הפונציה הראשונה.

על מנת לבדוק אם משתנה כלשהו קיים, נשתמש בפונקציה: Isset()

ועל מנת למחוק אותו נשתמש בשיטה הבאה: Unset()

תכנות מונחה עצמים בשפה זו:

מחלקה נקראת class, לשם ירושה ממחלקה נשתמש במילה extends, ועוד בדומה לשפת ג'אווה.

בנאי מוגדר על ידי המילה השמורה: __construct (בשונה מג'אווה בה זה שם המחלקה בלי החזרת פרמטר).

בנוגע לשימוש בביטוי רגולארי, כנסו ללינק:

טיפול בנתנים:

כמובן ישנם עוד המון שיטות, המקדתי בשיטות הנפוצות ביותר או בתחביר המיוחד בשפה זו.

אני מקווה להמשיך להסביר, לפחות על הפקודות השימושיות בנוגע לטיפול במחרוזות.

אם אתם מעוניינים, כתבו לי בתגובות ואשתדל לאוסיף את זה.

מאמרים נבחרים
מאמרים חדשים
ארכיון
חפש לפי תג
הבלוג של ישרוליק
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square

ישרוליק נט

israelik net

גולשים אלייך...

bottom of page