PHP Professional এবং Zend Certified PHP Engineer (ZCPE ) Course এ সীমিত সংখ্যক আসন বাকি আছে। আগ্রহীদেরকে অতিসত্বর মাসুদ আলম স্যার এর সাথে যোগাযোগ করার জন্য অনুরোধ করা যাচ্ছে। স্যার এর মোবাইল নম্বর : ০১৭২২ ৮১ ৭৫ ৯১

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

PHP তে loops কি?

php loops

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

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

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

  • For
  • While
  • do-while
  • foreach

PHP তে for loop কি?

PHP for loop

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

PHP তে for loop flowchart কি?

forloop

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;

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

উদাহরণ ১:

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

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

উদাহরণ ২:

<?php
for ($i = 1; ; $i++) {
    if ($i > 10) {
        break;
    }
    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-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 flowchart

PHP তে while loop Syntax কি?

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

syntax ১:

initialization
while (condition){
    statement
    increment
}

syntax 2:

initialization
while (condition):
    statement
    increment
endwhile;

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

উদাহরণ ১:

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

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

উদাহরণ ২:

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

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

উদাহরণ ৩:

<?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;
?>

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 কি?

dowhile

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 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

এই ক্যাটাগরির অন্যান্য পোস্ট:

Masud Alam
আমি মাসুদ আলম, বাংলাদেশের ৩৬ তম Zend Certified Engineer । ২০০৯ সালে কম্পিউটার সাইন্স থেকে বেচেলর ডিগ্রী অর্জন করি। দীর্ঘ ৮ বছর আমি Winux Soft, SSL Wireless, IBCS-PRIMAX, Max Group, Canadian International Development Agency (CIDA), Care Bangladesh, World Vision, Hellen Keller সহ বিভিন্ন দেশি বিদেশী কোম্পানিতে ওয়েব ডেভেলপমেন্ট এবং সফটওয়্যার ডেভেলপমেন্ট এর উপর বিভিন্ন লিডিং পজিশন এ চাকরি এবং প্রজেক্ট লিড করি। বিশেষ ভাবে বাংলাদেশের ১০০ জন জেন্ড সার্টিফাইড ইঞ্জিনিয়ার এর মধ্যে ৫২ জন ই আমার হাতে জেন্ড সার্টিফাইড হয়েছে। বর্তমানে TechBeeo Software Company তে সিইও হিসাবে আছি । পাশাপাশি w3programmers ট্রেনিং ইনস্টিটিউট এ PHP এর উপর Professional এবং Advance Zend Certified PHP -7 Engineering কোর্স করাই। আর w3programmers.com সাইট টি আমার।

Leave a Reply

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