קהילות פורומים, הורדות, יעוץ ותמיכה


אשכולות דומים

  1. [מדריך] PHP משתנים
    על ידי TheBen בפורום האקינג ואבטחת מידע
    תגובות: 3
    הודעה אחרונה: 08-07-2009, 18:12
  2. תגובות: 4
    הודעה אחרונה: 13-06-2009, 15:43
  3. [מדריך]הפעלת PHP על המחשב
    על ידי B1ackSn0w בפורום האקינג ואבטחת מידע
    תגובות: 2
    הודעה אחרונה: 01-08-2008, 16:18
  4. [מדריך] פתיחת שרת ביתי -PHP
    על ידי LegenD^KilleR בפורום ארכיון מדריכים
    תגובות: 12
    הודעה אחרונה: 27-05-2007, 18:43
  5. [מדריך] בפרקים על php
    על ידי the champ is here בפורום תיכנות ובניית אתרים
    תגובות: 6
    הודעה אחרונה: 22-05-2007, 19:27
נושא נעול
מציג תוצאות 1 עד 10 מתוך 10

[מדריך] PHP לולאות ובקרת זרימה

  1. #1
    משתמש ותיק האוואטר של Funy
    שם פרטי
    איציק
    תאריך הצטרפות
    09/2009
    הודעות
    7,524
    לייקים
    10
    נקודות
    119
    משפט מחץ
    לא איציק , אי'זו
    מין: זכר

    ברירת מחדל [מדריך] PHP לולאות ובקרת זרימה

    פרק 1 : תנאי (IF).

    כדי לעשות בדיקות נקודתיות צריך להשתמש בפקודה if שאיתה בודקים תנאים ולהתנות ביצוע הוראות מסויימותת בתוצאות הבדיקה!

    דוגמא לתחביר:
    קוד PHP:
    קוד:
    <?php if (condition) { some code } ?>
    הסבר:
    condition - זה התנאי שאיתו בודקים דבר מסויים לדוגמא שיויון של 2 משתנים או כל דבר אחר.
    some code - הקוד שיתבצע אם התנאי יצא נכון!

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

    דוגמא לתחביר:
    קוד PHP:
    קוד:
    <?php
    if (condition)
    {
       some code
    }
    else
    {
       some code2
    }
    ?>

    הסבר:
    else - פירושו באנגלית זה "אחרת". פה זה אומר מה יקרה כאשר התנאי לא יצא נכון
    some code2 - הקוד כאשר התנאי יצא לא נכון.

    הבנו מה קורה כאשר יש רק תנאי אחד לבדוק אבל מה קורה שיש לנו 2 תנאים לבדוק ב-IF אחד? אז מה נעשה ככה?

    קוד PHP:
    קוד:
           <?php
     if (condition)
     {
        some code
     }
    else
    {
       if (condition2)
       {
          some code2
       }
       else
       {
          some code3
       }
    }
     ?>

    כמו ששמתם לב בקוד שלמעלה יש 2 תנאים לבדוק אבל לעשות ככה זה טיפה מסורבל (ושלא לדבר אם יש יותר מ-2 תנאים!) לכן יש את מה שנקרא else if או elseif (מחובר או לא מחובר זה לא חשוב, תעשו מה נוח לכם)
    אז את הקוד שלמעלה אפשר לירשום אותו ככה:
    קוד PHP:
    קוד:
                   <?php
     if (condition)
     {
        some code
     }
    else if (condition2)
    {
       some code2
    }
    else
    {
      some code3
    }
     ?>

    הסבר:
    else if - מה שקורה כאשר התנאי הראשון יוצא לא נכון הוא עובר לתנאי השני!

    הערה:אם לא היה else if אלה רק if אז מה שהיה קורה זה שה-if הראשון היה נבדק ואם היה יוצא אמת הוא היה עושה את הקוד! וככה גם השני היה נבדק וגם אם הוא היה יוצא אמת אז גם פה הקוד היה נעשה. וכאשר שמנו else if הבטחנו שרק אחד מבין כל האפשרויות תתבצע.

    פרק 2: אופרטורים

    אופרטורים להשוואה:
    == - בדיקת שיוויון
    קוד PHP:
    קוד:
                           if ($age==18)


    =! - בדיקת אי שיוויון
    קוד PHP:
    קוד:
                           if ($age!=17)


    > - בדיקת קטן מ...
    קוד PHP:
    קוד:
                           if ($age<50)


    < - בדיקת גדול מ...
    קוד PHP:
    קוד:
       if ($age>7)


    => - בדיקת קטן ושווה מ...
    קוד PHP:
    קוד:
      if ($age<=18)


    =< - בדיקת גדול ושווה מ...
    קוד PHP:
    קוד:
             if ($age>=17)


    נסו לבדוק בעצמכם אם ההשוואת נכונות (במקרה ש-$age הוא 18)

    אזהרה : סימן השיוויון (=) ואופרטור השוואה (==) זה לא אותו דבר! הסימן שווה (=) מסמל הצבה והסימן דאבל שווה (==) מסמל שיוויון

    אופרטורים לוגיים:

    && - מסמל "גם" ז"א אם כל התנאים התקיימו (הכל כולל הכל)
    קוד PHP:
    קוד:
        if ($age==18 && $name=="matan")


    || - מסמל "או" ז"א לפחות תנאי אחד התקיים (אם בכלל לא נתקיים שום תנאי זה מחזיר שקר ואם 1 ומעלה זה מחזיר אמת)
    קוד PHP:
    קוד:
             if ($age<17 && $name=="matan")


    [
    ! - מסמל "ההפך" (NOT) ז"א כאשר יש את הסימן לפני משהו שהוא אמת זה יהפוך לשקר.
    קוד PHP:
    קוד:
     if (!isset($age))


    הערה: הפונקציה isset היא פונקציה שמחזירה true במקרה שקיים ערך בתוך המשתנה שמציבים אצלה ו-false במקרה שאין או שהוא ריק (להסבר מורחב בפרקים הבאים)

    דוגמא לשימוש באופרטורים:
    קוד PHP:
    קוד:
     <?php
    $age=18;
    $name="matan";
    if ($age==18 && $name=="matan")
    {
      $age=17.12;
    }
    else if ($age<=20 || name=="roy")
    {
    $name=="matan";
    }
    else
    {
    $age=20;
    $name="lol";
    }
    ?>

    אופרטורים מתמטיים:
    כמו בכל שפה גם פה יש מתמטיקה ואת פעולות חשבון רק שפה קוראים להם אופרטורים מתמטיים.

    + - פעולת חיבור
    קוד PHP:
    קוד:
         $age=9+9;


    - - פעולת חיסור
    קוד PHP:
    קוד:
          $age=27-9;


    * - פעולת כפל
    קוד PHP:
    קוד:
     $age=2*9;


    / -פעולת חילוק
    קוד PHP:
    קוד:
         $age=36/2;


    % - פעולת מדולוס, שארית של חילוק
    קוד PHP:
    קוד:
      $age=360%19;


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

    אופרטורים של הוספה:
    כל מה שתראו בשורה אחת זה אותו הדבר בהכל רק דרך הכתיבה שונה!


    קוד PHP:
    קוד:
              $a=$a+1;    $a+=1;     $a++;     ++$a;


    קוד PHP:
    קוד:
       $a=$a-1;     $a-=1;    $a--;     --$a;


    קוד PHP:
    קוד:
              $a=$a+$b;     $a+=$b;


    קוד PHP:
    קוד:
                           $a=$a-$b;     $a-=$b;


    קוד PHP:
    קוד:
            $a=$a*$b;     $a*=$b;


    קוד PHP:
    קוד:
          $a=$a/$b;     $a/=$b;


    קוד PHP:
    קוד:
       $a=$a%$b;     $a%=$b;

    הערה:
    קוד PHP:
    קוד:
    $a=5;
    echo $a++; //Prints 5
    echo $a; //Prints 6
    echo ++$a; //Prints 7
    echo $a; //Prints 7



    הסבר:
    ++ לפני המשתנה זה קודם מקדם תמשתנה באחד, ואז עושה איתו פעולות.
    ++ אחרי המשתנה זה בעצם מקדם תמשתנה רק לאחר סיום הפקודה (לאחר ה[IMG]http://images.***.co.il/smilies2/wink_5.gif[/IMG]
    וזה תקף גם לגבי החיסור..


    אני חושב שזה היה דיי מובן...

    עד כאן אופרטורים! וחברה תלמדו ת'שם זה עוזר [=

    פרק 3 : תנאי מורחב (switch)

    switch דומה ל-if...elseif כי במקום לעשות הרבה כאלו אפשר לעשות עפ"י מבנה switch שבודק אך ורק שיוויון!

    תחביר ה-switch:

    קוד PHP:
    קוד:
               <?php
    switch (some var)
    {
    case 1:
       some code
    break;
    .
    .
    .
    .
    case 32:
       some code
    break;
    
    default:
        some code
    }
    ?>

    הסבר:
    some var - המשתנה שאנחנו רוצים לבדוק את הערך שבו ע"י השוואה בלבד!
    case - אחרי זה אמורה להיות האופציה שהמשתנה משתווה אליה. לאחר האופציה חייב לבוא נקודותיים ( : )
    break - שובר\עוצר את ה-switch לאחר שמצא את האפשרות. (הסבר מורחב יותר בפרק 7)
    default - הברירת מחדל במקרה ששום מקרה לא הצליח! גם פה חיי לבוא אחרי זה נקודותיים ( : )

    הערה: לא חובה לשים break אבל ה-switch יבדוק את הכל! וזה סתם בזבוז וזה יכול להוביל לבאגים! לכן רצוי לשים.

    דוגמא:
    קוד PHP:
    קוד:
                     <?php
    $age=18;
    switch ($age)
    {
    case 3:
       echo "my age is: 3";
    break;
    case 15:
        echo "my age is: 15";
     break;
    case 18:
        echo "my age is: 18";
     break;
    case 25:
        echo "my age is: 25";
     break;
    case 32:
       echo "my age is: 32";
    break;
    default:
       echo "my age is: undefinde";
    }
    ?>

    ברור לכם שהפלט יהיה : my age is: 18

    פרק 4 : לולאת FOR

    לולאת for היא לולאה שמכניסים לה מאיפה להתחיל ומאיפה לסיים וככה היא עושה מספר פעמים קוד מסויים! (תלוי כמה הכנסתם לה)

    תחביר לולאת for
    קוד PHP:

    הסבר:
    var start value - ערך ההתחלתי של הלולאה! פה מתקבל רק אופרטור של השמה (=)
    var end value - ערך הסיום של הלולאה! פה מתקבל 2 אופרטורים: קטן מ... (>) או קטן ושווה מ.. (=>)
    var step - קצב הליכת הלולאה מהמספר ההתחלתי עד לסופי (בדרך כלל שמים 1 או ++)
    some code - הקוד שרוצים שהוא יתבצע מס' פעמים.

    הערה: ההפרדה בין סוגי הערכים שבלולאת for צריכה להיות מופרדת ע"י נקודה פסיק ([IMG]http://images.***.co.il/smilies2/wink_5.gif[/IMG]

    דוגמא:
    קוד PHP:
    קוד:
     <?php
    $a=0;
    for ($i=1;$i<=5;$i++)
    {
         $a+=$i;
    }
    
    echo $a;
    ?>

    הערה: המשתנה $i משתנה כל פעם (נוסף לו 1 כל סיבוב של הלולאה).

    מה יצא $a?
    תשובה: 15

    יש דבר שנקרא: לולאה מקוננת שזה לולאה בתוך לולאה הסתכל בדוגמא הבאה ונסה להבין אותה!

    קוד PHP:
    <table border="1" dir="ltr" align="center" >
    קוד:
    <?php  
    for ($i=1; $i<=10; $i++) {  
    echo "<tr>";   
        for ($j=1; $j<=10; $j++) {  
            echo "<td align=\"center\">".$j*$i."</td>";  
        }  
    echo "</tr>";       
    } 
    ?> 
    </table>

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

    1) הוא עובר ל-1 בלולאה הראשונה
    2) מדפיס את <tr> (הדבר מוסבר במדריך של חלק א על הדפסות של HTML וכל השאר)
    3) עושה את כל הלולאה השניה
    4) בערך שלה עכשיו המשתנה $i הוא 1 לכן תיוצר שורה של 1-10 תאים! שבתוכם יהיו המספרים מ-1 עד 10 (בכל תא מספר)
    5) הדפסת תגית </tr> זהיא בעצם סוגרת את השורה
    6) חזרה על אותו דבר עוד 9 פעמים בעוד שה-$i גדל ב-1 תמיד.

    הערה: בלולאה מקוננת כדי לעצור את 2 הלולאות יחד יש לכתוב את הפקודה break ככה:
    קוד PHP:
    קוד:
               break 2;


    התוצאה הסופית היא לוח כפל יפה [= מי שלא מאמין שיקח את הקוד ויבדוק אותו.

    פרק 5: לולאת WHILE

    לולאת היא שונה במקצת מלולאת for. לולאת while צריכה לקבל בהתחלה תנאי שכל עוד שהוא מתקיים היא עושה את הלולאה!

    תחביר לולאת while
    קוד PHP:
    קוד:
         <?php
    while (condition)
    {
       some code
    }
    ?>

    הסבר:
    condition - התנאי שהלולאה צריכה לקיים כדי לעבוד.

    דוגמא:
    קוד PHP:

    מה יהיה הפלט הסופי?
    תשובה: 1,2,3,4,5
    תחשבו למה זה 1,2,3,4,5 ולא ככה 1,2,3,4,5,

    שימו לב שכאשר $i נהיה 6 הוא כבר לא מקיים את התנאי של הלולאה ולכן הוא מופסק!

    פרק 6: לולאת do.....while

    לולאה זאת ממש דומה ל-while הרגיל! ההבדל היחידי שדבר ראשון הוא עושה את מה שבלולאה פעם אחת ואז הוא בודק אם מתקיים התנאי בסוף ואם כן הוא חוזר ואם לא הוא ממשיך בתוכנית!

    תחביר:

    קוד PHP:
    קוד:
    <?php
    do {
      some code
     }
     while (condition)
    ?>

    הסבר:
    condition - התנאי שהלולאה צריכה לקיים כדי להמשיך ולעבוד.

    אני חושב שלא צריך דוגמא עקב העובדה שזה כמו WHILE רגיל...

    פרק 7 :break ו-continue

    break - משמעותו של break זה לשבור\להפיסק את מהלך הלולאה! (של כל הלולאות) ז"א שאם יש לולאה שהיא באמצע או בכל מקום אפשרי ויש לה break היא תיעצר והקוד ימשיך!
    דוגמא:
    קוד PHP:
    קוד:
         <?php
    for ($i=0;$i<=10;$i++)
    {
      if ($i==6) 
      {
         break;
      }
      echo $i."<br>";
    }
    ?>

    מה יודפס?
    תשובה:
    1
    2
    3
    4
    5

    וזהו... מפני שמתי שהמשתנה $i מגיע ל-6 הוא שובר\עוצר את הלולאה וממשיך בשאר הקוד כרגיל! וככה בכל הלולאות (while ו-do... while)

    continue - התפקיד של continue הוא להחזיר את הלולאה למעלה! (ז"א ששאר הקוד בלולאה לא יעשה)

    דוגמא:
    קוד PHP:
    קוד:
    <?php
    for ($i=0;$i<=10;$i++)
    {
      if ($i==6) 
      {
         continue;
      }
      echo $i."<br>";
    }
    ?>

    מה יודפס?
    תשובה:
    1
    2
    3
    4
    5
    7
    8
    9

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

    לולאת for each תוסבר ביחד עם מערכים!
    פה נגמר המדריך.

    קרדיט לאתר אחר.

  2. קישורים ממומנים

  3. #2
    האוואטר של MartiNi
    תאריך הצטרפות
    02/2008
    הודעות
    15,202
    לייקים
    654
    נקודות
    2,600
    משפט מחץ
    Schrodinger's cat walks into a bar... and doesn't.
    מין: זכר

    ברירת מחדל

    אחי, אתה לא מבין שום דבר בPHP נכון?
    ציטוט נכתב במקור על ידי The Picture of Dorian Gray" By Oscar Wilde"
    To me, beauty is the wonder of wonders. It is only shallow people who do not judge by appearances. The true mystery of the world is the visible, not the invisible.


  4. #3
    משתמש כבוד האוואטר של B1ackSn0w
    שם פרטי
    שחף
    תאריך הצטרפות
    11/2007
    גיל
    33
    הודעות
    10,886
    לייקים
    15
    נקודות
    319
    משפט מחץ
    תעשו אהבה ולא מלחמה קונדום יותר זול מחומר נפץ!
    מין: זכר

    ברירת מחדל

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

    הוא אוהב במבה, ביסלי ואת עודד מנשה


    ציטוט נכתב במקור על ידי אושרי
    לפני כל יום שהיינו הולכים לישון אבאלה שלי היה בא מרביץ לנו בחורף להריץ דם בגוף כי היה קר זה היה כואב אבל מחמם וגם מרדים

  5. #4
    מורחקים
    תאריך הצטרפות
    10/2009
    הודעות
    72
    לייקים
    0
    נקודות
    0
    מין: זכר

    ברירת מחדל

    תודה

  6. #5

    ברירת מחדל

    תודה

  7. #6
    משתמש מתחיל האוואטר של DrorZeno
    תאריך הצטרפות
    12/2009
    הודעות
    23
    לייקים
    0
    נקודות
    0
    מין: זכר

    ברירת מחדל

    תודה רבה רק חבל שלא אתה כתבת אותו

  8. #7
    משתמש מתחיל
    תאריך הצטרפות
    09/2009
    הודעות
    15
    לייקים
    0
    נקודות
    0
    מין: זכר

    ברירת מחדל

    מדריך מושקע.. מתאים למתחיל.
    לא עברתי על הכל.. נראה סבבה.

  9. #8

    ברירת מחדל

    תודה רבה



  10. #9

    ברירת מחדל

    תודה

  11. #10
    משתמש מתחיל
    שם פרטי
    פז
    תאריך הצטרפות
    12/2009
    גיל
    30
    הודעות
    25
    לייקים
    0
    נקודות
    0
    מין: זכר

    ברירת מחדל

    תודה

נושא נעול


הרשאות פרסום

  • אין באפשרותך לפרסם נושאים חדשים
  • אין באפשרותך לפרסם תגובות
  • אין באפשרותך לצרף קבצים
  • אין באפשרותך לערוך את הודעותיך


כל הזמנים הם לפי GMT +3. השעה כרגע היא 20:59.
מופעל על ידי vBulletin™ © גרסה 4.1, 2011 vBulletin Solutions, Inc. כל הזכויות שמורות.
פעילות הגולשים
אומנות וגרפיקה
מוזיקה
ספורט
סדרות טלוויזיה
סרטים וקולנוע
קנייה ומכירה
רשתות חברתיות
הבורר 3
פורומי פנאי ובידור
סרטים
סדרות
משחקים
דיבורים
אקטואליה
בעלי חיים
בדיחות והומור
משחקי ספורט
הבורר
מחשבים וטכנולוגיה
תמיכה טכנית
חומרה ומודינג
תוכנות להורדה
סלולארי וגאדג'טים
רקעים למחשב
ציוד הקפי למחשב
אבטחת מידע
תכנות ובניית אתרים
כסף ברשת
אייפון
בריאות ואורח חיים
כושר ופיתוח גוף
דיאטה
צבא וגיוס
יעוץ מיני
מה שבלב
אומנות הפיתוי
יהדות
מיסטיקה ורוחניות
אתאיזם ודתות

נושאים: 2,451,101 | הודעות: 8,151,683 | משתמשים: 315,603 | המשתמש החדש ביותר: upizijoj | עיצוב גרפי: סטודיו עודד בביוף | קידוד: rellect