بحث حلقه

    در کلیه زبان های برنامه نویسی، عملا زمانی که نیاز داریم تا کاری را به صورت مکرر انجام دهیم، از حلقه ها استفاده می کنیم. در واقع با استفاده از حلقه یا loop در زبان های برنامه نویسی، می توانیم کار یا کارهایی را، چندین بار انجام دهیم.

    حلقه ها در PHP نیز مانند سایر زبان های برنامه نویسی، برای همین منظور استفاده می شوند. در واقع با استفاده از حلقه های تکرار در پی اچ پی، کاری را بر اساس یک شرط یا زمان یا تعداد خاصی، به انجام می رسانیم.

    ما یک قانونی در برنامه نویسی داریم به نام(DRY) 

    (dont repeat your self ) کدها را تکرار نکنید کدها را خیلی خلاصه و کوتاه بنویسید.

    برای تعریف حلقه چند روش وجود دارد یکی از این روشها حلقه (for) می باشد.

    حلقه (for) کلمه کلیدی for را داراست با یک پرانتز باز و بسته در داخل پرانتز for سه بخش وجود دارد .

    اولین بخش تعریف شمارنده است مانند:

    <?php 
    for ($i=1;)
    
    به این مقدار شمارنده می گویند

    قسمت دوم :شرط حلقه

    شرط حلقه یعنی اینکه مقدار (i)تا چه زمانی باید ادامه پیدا کند

    پس به این شکل نوشته می شود

     

    PHC Training Part Two
    $i<=10
    کارایی گام حلقه چیست؟

    چون حلقه مرتب تکرار می شود و این گام حلقه باعث می شود که حلقه در هر بار تکرار چک شود

    پس حلقه را به این روش می نویسیم مانند:

     

    php?>
    for($i=1;$i=>10;$i=$i+1)
    {
    
    echo 
     "<p> number {$i}</p>";
    }
    ?>

    برای اینکه مشکل در چاپ ایجاد نشود حتما متغیر را در داخل یک براکت باز و بسته قرار دهیم{}

    در شرط حلقه حلقه به هر تعداد که می خواهد اجرا شود این دستور به همان تعداد تکرار می شود

    ما در این مثال می خواهیم که حلقه ده بار تکرار شود

    حلقه بار اول مقدارش یک است شرط حلقه چک می شود به این صورت که:

    ایا (i$) که مقدارش یک می باشد از عدد (۱۰) کوچکتر مساوی می باشد

    پس می تواند وارد حلقه شود یک بار اجرا شود و به سمت گام حلقه برود  

    یعنی این که (i) یک مرحله باید افزایش پیدا کند یک بار دیگر این کد اجرا می شود 

    دوباره شرط چک می شود  تا ۱۰بار حلقه اجرا می شود زمانی که  حلقه  به عدد (۱۱) می رسد

    عدد (۱۱)کوچکر مساوی عدد (۱۰)نیست در این جا حلقه به پایان می رسد به همین علت این شرط لازم می باشد:

    پس اگر این شرط یک مقداری باشد که نتوان برسیش کرد و نتوان یک نقطه پایانی  برای این حلقه در نظر گرفت  این حلقه تا بی نهایت ادامه پیدا می کند.

    این علامت نقطه که بین string و متقییر قرار گرفته (.)concet نام دارد یعنی متصل کردن .

    کدهای php وقتی فقط کد php استفاده شده نیازی به بستن tag php نیست وفقط tag شروع

    اما اگر در داخل کدهای html قرار گرفته لازم tag پی اچ پی را ببندیم.

    و همچنین می توان به جای string تگ html نوشت

    مانند:

     

     

     

    php?>
    for($i=1;$i<=10;$i=$i+1)
    {
    
      echo "number . $i"
    }
    
    ?>

    تگ p در html , css یک ساختار block است یعنی اینکه هر کدام در یک خط قرار می گیرد

    پس به همین دلیل php می تواند محتوای صفحات html را کاملا کنترل کند

    string را با دو روش می نویسیم مانند:

    <?php
    for($i=1;$i<=10;$i=$i+1)
    }
     "<p>number $i</p>"
    {
    
    ?>

    در روش اول string را به شکل دبل کوتیشن نوشتیم و در روش دوم به شکل تک کوتیشن نوشته شده

    single کوتیشن برای متن خالی استفاده می شود.

    ولی دبل کوتیشن یک خاصیتی دارد و خاصیتش این است که ما یک متقیر تعریف می کنیم و یک مقداری داخل ان 

    قرار می دهیم مانند:

    <?php
    "wdfggjdnbbjk";
    'fgghjklluytgg';
    <?php
    $a=20;
    "afdghjkkutrfg{$a}";

    پی اچ پی همیشه متغیرها و دادهایی که به شکل دبل کوتیشن هستند را بررسی می کند

    و اگر متقییری در داخل ان بود که قابل چاپ باشد مانند عدد یا رشته (string)بررسی و اجرا می کند

    در دبل کوتیشن از روش بررسی متقییرها استفاده می کنیم

    حلقه while

    ساختار حلقه while در PHP و اغلب زبان های برنامه نویسی به این صورت است که با بررسی شرط تا هر زمان که برقرار و درست (true) باشد کدهای داخل کاراکترهای {} اجرا می شود، برخلاف حلقه for که باید تعداد دور حلقه از قبل و درون ساختار حلقه مشخص باشد در حلقه while الزامی به مشخص بودن تعداد دور حلقه نیست و خاتمه حلقه مبتنی بر false شدن بررسی برقراری شرط آن است که عمدتا مبتنی بر متغیری بیرون از حلقه است

    
    $i=1;
    while($i => 10)
    {
    echo "<p> number: {$i}</p>";
    $i=$i+1;
    }
    
    ?>

    مقدار دهی اولیه برای شمارنده در خارج از حلقه اتفاق می افتد فقط شرط حلقه در داخل پرانتز while اتفاق می افتد و بروز رسانی شمارنده حلقه هم در پایان حلقه نوشته می شود

    حالا یک مسئله دیگر اگر بخواهیم (i)را از صفر شروع کنیم

    مانند:

    php?>
    $i=0;
    while($i<10)
    {
    $i=$i+1;
    echo "<p> number: {$i}</p>";
    }
    
    ?>

    بحث توابع

    تعریف و استفاده از توابع در زبان php مشابه سایر زبان های برنامه نویسی است. یک تابع بخشی از کدها میباشد که یک یا چند ورودی بصورت اختیاری دریافت میکند و یک سری عملیات داخل آن تابع انجام میگیرد و بصورت اختیاری ممکن است خروجی داشته باشد.

    نکته : توجه کنید که هنگام تعریف یک تابع جدید ابتدا باید کلمه ی کلیدی function را در ابتدای آن بنویسید بعد از نام تابع () و سپس {} قرار دهید .

    در داخل پرانتز باز و بسته ورودی های تابع تعریف می شوند

    ورودی یعنی چه؟

    ورودی ان چیزی که تابع  قرار بر اساس ان داده را پردازش کند

    کلمه کلیدی function یک تابع تعریف می کند به نام sum

    (ورودی)

    a , b

    را دریافت می کند در داخل بدنه خودش return می کند و مقدار جمع انها رابه عنوان خروجی بر می گردانند مانند:

    
    function sum($a,$b)
    {
    return $a + $b;
    }
    
    a$=10;
    b$=30;
    
    echo sum($a,$b);

    تابع ما sum قرار است عملیات جمع انجام دهد پس باید یک سری اعداد در اختیارش بگذاریم یعنی اینکه در داخل پرانتز روبه روی sum متغیر را وارد کنیم

    مانند متغیر 

    ($a,$b,$c)
    return یعنی چه؟

     

    در زمان استفاده از تابع ما ورودی ها را به تابع می دهیم و نتیجه تابع همان returnاست که در داخل بدنه تعریف شده

    و مزیت فراخوانی تابع این است که ما می توانیم از ان بارها استفاده کنیم و همچنین خود تابع می تواند return نداشته باشد و خودش echo کند.مانند:

    <?php
    function sum($number1+$number2)
    {
      echo $number1 + $number2;
    }
    
    $a=10;
    $b=30;
    
    sum($a,$b);
    sum($a,$b);

    و همچنین می توان در داخل تابع از if استفاده کرد مانند:

    
    php?>
    function sum($number1+$number2)
    {
    if ($number1 > 20);
    
    {
      return $number1+$number2;
    
    }else
    
      {
       return $number1*$number2;
      }
    }
    
    
    
    a$=10;
    b$=30;
    
    sum($a,$b);
     sum($a,$b);
    
    ?>
    چرا دو return استفاده شده؟

    چون تابع در هر شرایطی که اجرا شود فقط یک return اجرا می شود

    return در دو بلاک مختلف قرار می گیرد چون شرط ها با هم فرق می کنند

    (sum) در نهایت مقدارش محاسبه می شود و echo را انجام می دهد.

    در زمان تعریف تابع به متقیر های که در داخل پرانتز قرار می گیرد پارامتر گفته می شود و در زمان فراخوانی ارگومان گفته می شود 

    تابع بر اساس ورودی های می توانند خروجی را مشخص کنند و همچنین می توانند از تکرار کدها جلوگیری کنند  و یک منطق خاصی را در داخل تابع بنویسیم اگر نیاز به تکرار داشته باشد وهمچنین یک تابع می تواند ورودی و خروجی نداشته باشد.

    این یک نمونه تابع است که نه ورودی و نه خروجی به شکل return دارد

    <?php
    ( )fuction sum
    {
      
    }
    sum();

    و همچنین می تواند تابعی بنویسیم که ورودی نداشته باشدولی خروجی با return داشته باشد مانند:

    <?php
    function sum()
    {
      return "wscgadvyjl";
    }
    
    sum();

    و همچنین می توانیم بگوییم echo را خارج از توابع انجام دهد مانند:

    <?php
    function sum( )
    {
      return "546789094";
    }
    
      echo sum ();
    ارسال نظر

    آدرس ایمیل شما منتشر نخواهد شد.