PHP Control Structure পর্ব-৩: PHP for, while, do-while loops

PHP তে loops কি?

PHP অথবা যেকোনো programming language এ loop হচ্ছে একটি নির্দিষ্ট কাজ একটি নির্দিষ্ট শর্ত বা condition পূরণ না হওয়া পর্যন্ত বার বার করতে থাকা বা execute করা।

PHP তে loops কত প্রকার ?

PHP তে ৪ ধরণের loop আছে , সেগুলো হচ্ছে

  • For
  • While
  • do-while
  • foreach

PHP তে for loop কি?

PHP অথবা যেকোনো programming language এ for loop হচ্ছে একটি নির্দিষ্ট কাজ একটি নির্দিষ্ট শর্ত বা condition পূরণ না হওয়া পর্যন্ত বার বার করতে থাকা বা execute করে। for loop এ variable এর value initialization, condition এবং increment এর কাজ একই লাইনে করা হয়।

PHP তে for loop flowchart কি?

PHP তে for loop Syntax কি?

PHP তে for loop Syntax ২ ভাবে লেখা যায়

syntax ১:

for (initialization; condition; increment/decrement){
   code to be executed;
}

syntax ২ বা Alternative Syntax :

for (initialization; condition; increment/decrement):
    statement
    ...
endfor;
উদাহরণ ১:
1
2
3
4
5
<?php
for ($i = 1; $i <= 10; $i++) {
    echo $i;
}
?>

আবার আপনি চাইলে for loop কে এভাবেও লিখতে পারেন।

উদাহরণ ৩:

<?php
$i = 1;
for (; ; ) {
    if ($i > 10) {
        break;
    }
    echo $i;
    $i++;
}
?>

নিম্নলিখিত উদাহরণটি লক্ষ্য করুন , এখানে আমরা for loop এর মাধ্যমে ১ থেকে ২০ এর মধ্যের জোড় সংখ্যা গুলো print করব।

উদাহরণ ৪:

<?php
for($i=2;$i<=20;$i+=2){
echo $i,"<br>";
}
?>

একই ভাবে আমরা for loop এর মাধ্যমে ১ থেকে ২০ এর মধ্যের বেজোড় সংখ্যা গুলো print করতে পারি।

উদাহরণ ৫:

<?php
for($i=1;$i<=20;$i+=2){
echo $i,"<br>";
}
?>

নিচের উদাহরণে PHP for loop দিয়ে fibonacci series তৈরী করা হয়েছে। উল্লেখ্য fibonacci series হচ্ছে যেকোনো তিনটি নম্বর এর মধ্যে প্রথম দুইটির যোগফল হচ্ছে তার তৃতীয় নম্বরটি।

উদাহরণ ৭:

<?php
$f1=0;
$f2=1;
$f=1;
$f3=1;
echo $f1,"<br>",$f2;
for($i=0;$i<=6;$i++){
     
    $f3=$f1+$f2;
    $f1=$f2;
    $f2=$f3;
    echo $f3;
}

নিচের উদাহরণে আমরা for loop এর মাধ্যমে ২০ থেকে ১ অর্থাৎ reverse সংখ্যা গুলো print করতে পারি।

উদাহরণ ৮:

<?php
for ($i = 20; $i >0; $i--):
    echo $i,"<br>";
endfor;
?>

PHP তে while loop কি?

PHP অথবা যেকোনো programming language এ while loop হচ্ছে for loop এর মতোই অর্থাৎ :একটি নির্দিষ্ট কাজ একটি নির্দিষ্ট শর্ত বা condition পূরণ না হওয়া পর্যন্ত বার বার করতে থাকা বা execute করে। পার্থক্য হচ্ছে while loop এ variable এর value initialization, condition এবং increment এর কাজ ভিন্ন ভিন্ন লাইনে করা হয়।

PHP তে While loop flowchart কি?

PHP তে while loop Syntax কি?

PHP তে while loop Syntax ২ ভাবে লেখা যায়

syntax ১:

nitialization
while (condition){
    statement
    increment
}

syntax 2:

initialization
while (condition):
    statement
    increment
endwhile;

নিম্নলিখিত উদাহরণ গুলো লক্ষ্য করুন , সব গুলো while loop ই সংখ্যা 1 থেকে 10 দেখাবে।

উদাহরণ ১:

1
2
3
4
5
6
7
<?php
$i=1;
while ($i <= 10) {
    echo $i;
 $i++;
}
?>

নিম্নলিখিত উদাহরণটি লক্ষ্য করুন , এখানে আমরা while loop এর মাধ্যমে 1 থেকে 2০ এর মধ্যের জোড় সংখ্যা গুলো print করব।

উদাহরণ ২:

<?php
$i=2;
while ($i <= 20) {
    echo $i;
 $i+=2;
}
?>
<?php
$i=1;
while ($i <= 20) {
    echo $i;
 $i+=2;
}
?>

নিচের উদাহরণে PHP while loop দিয়ে fibonacci series তৈরী করা হয়েছে। উল্লেখ্য fibonacci series হচ্ছে যেকোনো তিনটি নম্বর এর মধ্যে প্রথম দুইটির যোগফল হচ্ছে তার তৃতীয় নম্বরটি।

উদাহরণ ৪:

<?php
$f1=0;
$f2=1;
$f=1;
$f3=1;
echo $f1,"<br>",$f2;
$i=1;
while($i<=6){
     
    $f3=$f1+$f2;
    $f1=$f2;
    $f2=$f3;
    echo $f3;
$i++;
}

নিচের উদাহরণে আমরা while loop এর মাধ্যমে 20 থেকে 1 অর্থাৎ reverse সংখ্যা গুলো print করতে পারি।

উদাহরণ ৫:


<?php
$i = 20; 
while ($i >0):
    echo $i,"<br>";
 $i--;
endwhile;
?>

Zend Certified PHP Engineering (ZCPE) Course

http://w3programmers.com/bangla/zend-certified-php-engineering-zcpe-course/embed/#?secret=vkY9lGcKET

PHP তে do-while loop কি?

PHP অথবা যেকোনো programming language এ do-while loop হচ্ছে while loop এর মতোই অর্থাৎ :একটি নির্দিষ্ট কাজ একটি নির্দিষ্ট শর্ত বা condition পূরণ না হওয়া পর্যন্ত বার বার করতে থাকা বা execute করে। while loop এ variable এর value initialization, condition এবং increment এর কাজ ভিন্ন ভিন্ন লাইনে করা হয়। পার্থক্য হচ্ছে, while loop এ condition true না হলে while এর code block execute করতে পারেনা। এবং কোনো ফলাফল ও দেখায়না। কিন্তু do-while এ condition true না হলেও ১ বার code block execute করে, এবং ফলাফল দেখাতে পারে।

PHP তে do-While loop flowchart কি?

PHP তে do while loop Syntax কি?

do {
  // This code is run at least once
} while ( condition )
  
// This code is run after the loop finishes

নিম্নলিখিত উদাহরণটি লক্ষ্য করুন

<?php
 
$theNumber = rand ( 1, 10 );
 
do {
$myGuess = rand ( 1, 10 );
echo "I'm guessing: $myGuess</br />";
} while ( $myGuess != $theNumber );
 
echo "I got it! It's $myGuess!<br />";
 
?>

Result

I'm guessing: 3
I'm guessing: 5
I'm guessing: 7
I'm guessing: 2
I got it! It's 2!

PHP তে foreach কি?

PHP তে foreach বিশেষ ভাবে PHP array এবং object এর প্রত্যেকটি element এ loop এর কাজ করার জন্য ব্যবহৃত হয় ।

PHP তে foreach loop flowchart কি?

PHP তে foreach Syntax কি?

PHP তে foreach loop Syntax ৩ ভাবে লেখা যায়

syntax ১:

foreach ($array_or_object_handler as $value){
    statement
}

syntax 2:

foreach ($array_or_object_handler as $key=>$value){
    statement
}

syntax ৩:

foreach ($array_or_object_handler as $value):
    statement
endforeach;
syntax ৪:
foreach ($array_or_object_handler as $key=>$value):
    statement
endforeach;

নিম্নলিখিত উদাহরণ গুলো লক্ষ্য করুন , কিভাবে আমরা array এর element গুলোকে foreach দিয়ে iterate করতে পারি।

উদাহরণ ১:

$numbers=["one"=>1,"two"=>2,"three"=3,"four">4,"five"=>5];
foreach($numbers as $val){
echo $val,"<br>";
}

Result:

1
2
3
4
5

একইভাবে আমরা $numbers array এর key গুলোও print করতে পারি। নিম্নের উদাহরণটি দেখুন :

উদাহরণ ২:

$numbers=["one"=>1,"two"=>2,"three"=3,"four">4,"five"=>5];
foreach($numbers as $key=>$val){
echo $key,"<br>";
}

Result:

one
two
three
four
five

PHP foreach দিয়ে কি array element পরিবর্তন করা যায়?

হ্যাঁ PHP foreach এর সাথে reference ব্যবহার করে array element গুলোও পরিবর্তন করা যায় নিচের উদাহরণ দেখুন:

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
// $arr is now array(2, 4, 6, 8)
}
print_r($arr); 
unset($value); // break the reference with the last element
?>

Result:

2
4
6
8

ব্যাখ্যা : যেহেতু এখানে মূল এরে $arr এর সাথে $value variable টি reference করা , তাই $value variable টি change হওয়ার সাথে সাথে মূল array টি ও পরিবর্তন হয়ে যাবে।

PHP foreach দিয়ে কি আমরা class এর সব property এবং তাদের value print করতে পারব?

হ্যা অবশ্যয় তবে শুধু মাত্র public property গুলো print করতে পারব। নিচের উদাহরণ লক্ষ্য করুন :

<?php
class A{
    public $name="Plabon Mozumder";
    public $email="plabon@mail.com";
    public $mobile="01788339922";
    public $price;
    private $user;
    public function setPrice($amount){
        $this->price=$amount;
    }
     
}
$obj=new A;
$obj->setPrice(100);
 
foreach($obj as $property=>$val){
    print $property."=>".$val."\n";
}

Result:

name=>Plabon Mozumder
email=>plabon@mail.com
mobile=>01788339922
price=>100

PHP foreach ছাড়া কি array এর key এবং value প্রিন্ট করার অন্য কোনো উপায় আছে?

হ্যা আছে, PHP foreach ছাড়াও আপনি while loop দিয়ে array এর key এবং value প্রিন্ট করতে পারবেন।

<?php
$arr = array("one"=>1, "two"=>2, "three"=>3);
reset($arr);
while (list($key, $value) = each($arr)) {
    echo "$key=> $value\n";
}

Result:

one=> 1
two=> 2
three=> 3

Leave A Reply

Your email address will not be published. Required fields are marked *