Array এবং Object Comparison

Spaceship Operator (স্পেসশিপ অপারেটর) - পিএইচপি (PHP 7) - Computer Programming

355

Array এবং Object Comparison PHP-তে দুটি ভিন্ন ধরনের ডেটা স্ট্রাকচার এবং সেগুলির তুলনা করার জন্য নির্দিষ্ট কৌশল ব্যবহৃত হয়। এটি গুরুত্বপূর্ণ কারণ PHP-তে অ্যারে এবং অবজেক্টের তুলনা করা গেলে তাদের মধ্যে পার্থক্য থাকতে পারে এবং সঠিকভাবে তুলনা না করলে কোডের ত্রুটি বা অপ্রত্যাশিত ফলাফল আসতে পারে।

এখন, চলুন PHP তে Array এবং Object তুলনা (comparison) করার পদ্ধতিগুলি দেখি।


১. Array Comparison (অ্যারে তুলনা)

PHP-তে অ্যারে তুলনা করতে == এবং === অপারেটর দুটি ব্যবহৃত হয়।

== (Equality Comparison) অপারেটর

এটি দুটি অ্যারের মান তুলনা করে, তবে অর্ডার গুরুত্বপূর্ণ নয়। যদি দুটি অ্যারে একই কন্টেন্ট ধারণ করে তবে তারা সমান ধরা হয়, যদিও তাদের মধ্যে অর্ডার ভিন্ন হতে পারে।

উদাহরণ:

<?php
$array1 = [1, 2, 3];
$array2 = [1, 2, 3];

if ($array1 == $array2) {
    echo "Arrays are equal";  // আউটপুট হবে: Arrays are equal
} else {
    echo "Arrays are not equal";
}
?>

এখানে, $array1 এবং $array2 একে অপরের সমান কারণ তাদের মধ্যে মান একীভূত।

=== (Identity Comparison) অপারেটর

এটি দুটি অ্যারের মান এবং অর্ডার উভয়ই তুলনা করে। যদি অ্যারের মান এবং অর্ডার একে অপরের সমান হয়, তখনই তারা সমান ধরা হয়।

উদাহরণ:

<?php
$array1 = [1, 2, 3];
$array2 = [1, 2, 3];
$array3 = [3, 2, 1];

if ($array1 === $array2) {
    echo "Arrays are identical";  // আউটপুট হবে: Arrays are identical
} else {
    echo "Arrays are not identical";
}

if ($array1 === $array3) {
    echo "Arrays are identical";
} else {
    echo "Arrays are not identical";  // আউটপুট হবে: Arrays are not identical
}
?>

এখানে, $array1 এবং $array2 একে অপরের সমান এবং তাদের অর্ডারও এক, তাই তারা identical। কিন্তু $array3 এর অর্ডার ভিন্ন হওয়ায় এটি not identical


২. Object Comparison (অবজেক্ট তুলনা)

অবজেক্ট তুলনায়, PHP দুটি প্রধান তুলনা অপারেটর ব্যবহার করে: == এবং **===**। তবে, এগুলি অ্যারে তুলনার চেয়ে একটু আলাদা। == অপারেটর দুটি অবজেক্টের প্রপার্টি এবং মান তুলনা করে, কিন্তু === অপারেটর দুটি অবজেক্টের ইন্সট্যান্স এবং প্রপার্টি (অথবা মান) উভয়কেই চেক করে।

== (Equality Comparison) অপারেটর

এটি দুটি অবজেক্টের প্রপার্টি এবং মান তুলনা করে। যদি দুটি অবজেক্টের প্রপার্টি এবং মান সমান হয়, তাহলে তারা সমান ধরা হয়।

উদাহরণ:

<?php
class Person {
    public $name;
    public $age;

    function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }
}

$person1 = new Person("John", 25);
$person2 = new Person("John", 25);

if ($person1 == $person2) {
    echo "Objects are equal";  // আউটপুট হবে: Objects are equal
} else {
    echo "Objects are not equal";
}
?>

এখানে, $person1 এবং $person2 এর name এবং age প্রপার্টি সমান হওয়ায় তাদের মান সমান ধরা হয়। তবে, তাদের ইন্সট্যান্স আলাদা।

=== (Identity Comparison) অপারেটর

এটি দুটি অবজেক্টের ইন্সট্যান্স এবং প্রপার্টি/মান উভয়ই তুলনা করে। অর্থাৎ, দুটি অবজেক্ট যদি একই ইন্সট্যান্সের অংশ না হয়, তবে তারা কখনোই সমান হবে না, যদিও তাদের প্রপার্টি এবং মান সমান হতে পারে।

উদাহরণ:

<?php
$person1 = new Person("John", 25);
$person2 = new Person("John", 25);

if ($person1 === $person2) {
    echo "Objects are identical";
} else {
    echo "Objects are not identical";  // আউটপুট হবে: Objects are not identical
}
?>

এখানে, যদিও $person1 এবং $person2 এর প্রপার্টি এবং মান এক, তারা not identical কারণ তারা দুটি আলাদা ইন্সট্যান্স।


Array vs Object Comparison Summary

বৈশিষ্ট্যঅ্যারে তুলনাঅবজেক্ট তুলনা
== (Equality Comparison)অ্যারের মান তুলনা করে, অর্ডার গুরুত্বপূর্ণ নয়অবজেক্টের প্রপার্টি এবং মান তুলনা করে
=== (Identity Comparison)অ্যারের মান এবং অর্ডার তুলনা করেঅবজেক্টের ইন্সট্যান্স এবং প্রপার্টি তুলনা করে
অর্থঅ্যারে সমান হওয়ার জন্য মান এক হতে হবে, অর্ডার গুরুত্বপূর্ণ নয়অবজেক্ট সমান হওয়ার জন্য তাদের প্রপার্টি এবং মান এক হতে হবে, তবে তারা আলাদা ইন্সট্যান্স হতে পারে
ব্যবহারঅ্যারের ডাটা তুলনা করতে ব্যবহার করা হয়অবজেক্টের তুলনা করার জন্য ব্যবহার করা হয়

সারসংক্ষেপ

Array Comparison এবং Object Comparison PHP-তে বিভিন্ন কৌশল ব্যবহার করে করা হয়। অ্যারে তুলনা করার সময়, == এবং === ব্যবহার করলে অ্যারের মান এবং অর্ডার চেক করা হয়। অন্যদিকে, অবজেক্ট তুলনা করার সময়, == দুটি অবজেক্টের প্রপার্টি এবং মান চেক করে, এবং === দুটি অবজেক্টের ইন্সট্যান্স এবং প্রপার্টি উভয়ই চেক করে। PHP-তে এই দুটি ধরনের তুলনা আপনাকে ডেটার সঠিকতা এবং কোডের নির্ভুলতা নিশ্চিত করতে সহায়ক।

Content added By
Promotion

Are you sure to start over?

Loading...