কম্পিউটার টিউটোরিয়াল

PHP-এ bindParam এবং bindValue-এর পার্থক্য


bindParam এবং bindValue উভয়ই PHP-এর বিল্ট-ইন ফাংশন যা ডাটাবেস রেকর্ড অ্যাক্সেস করার জন্য PHP ডেটা অবজেক্টস স্টেটমেন্ট বা PDOStatement-এ ভেরিয়েবলকে মান দিয়ে ম্যাপ করার জন্য ব্যবহৃত হয়। PDOStatement আসলে ডাটাবেস কোয়েরির একটি অভস্ট্রাকশন লেয়ার।

নিচে ASP এবং ASP.NET-এর মধ্যে গুরুত্বপূর্ণ পার্থক্যগুলো দেওয়া হলো।

ক্রমিক নংমূল ভিত্তিbindParam ফাংশনbindValue ফাংশন
1সংজ্ঞাbindParam হলো একটি PHP বিল্ট-ইন ফাংশন যা একটি প্যারামিটারকে SQL স্টেটমেন্টে নির্দিষ্ট ভেরিয়েবল নামের সাথে বাইন্ড করে ডাটাবেস রেকর্ড অ্যাক্সেস করার জন্য।অন্যদিকে, bindValue আবার একটি PHP বিল্ট-ইন ফাংশন যা প্যারামিটারের মানকে SQL স্টেটমেন্টে নির্দিষ্ট ভেরিয়েবল নামের সাথে বাইন্ড করে।
2এক্সিকিউশনbindParam ফাংশন শুধু স্টেটমেন্ট এক্সিকিউশনের সময় এক্সিকিউট হয় অর্থাৎ $stmt -> bindParam(':variableName', $parameter); কল হলে।অন্যদিকে bindValue এর ঘোষণার সময় কম্পাইল হয়ে তার মান অ্যাসাইন করে অর্থাৎ $stmt->execute();
3অ্যাক্সেস করা মানউপরোক্ত পয়েন্টে উল্লিখিতভাবে bindParam স্টেটমেন্ট এক্সিকিউশনের সময় এক্সিকিউট হয়, তাই প্যারামিটারের সাথে ম্যাপ করা লেটেস্ট মান স্টেটমেন্ট দ্বারা ব্যবহৃত হয়।অন্যদিকে, bindValue-এ ফাংশন ঘোষণার সময় মান প্যারামিটারের সাথে অ্যাসাইন হয়ে যায় যা স্টেটমেন্ট দ্বারা ব্যবহৃত হয়।
4টাইপউপরোক্ত পয়েন্টে উল্লিখিতভাবে bindParam ফাংশন রানটাইম এক্সিকিউশন টাইপ।অন্যদিকে bindValue ফাংশন কম্পাইলড এক্সিকিউশন টাইপ।
5মডিফাইড মানbindParam-এ প্যারামিটার মান পরিবর্তন করা সম্ভব এবং সেটি স্টেটমেন্ট দ্বারা এক্সিকিউট হবে।অন্যদিকে bindValue-এ প্যারামিটার মান পরিবর্তন করা সম্ভব নয় এবং শুধু প্রাথমিক মান স্টেটমেন্ট দ্বারা এক্সিকিউট হয়।

  1. MEAN.js এবং MEAN.io-এর পার্থক্য

  2. জাভাস্ক্রিপ্ট এবং PHP-এর পার্থক্য

  3. PHP এবং JavaScript এর পার্থক্য

  4. সেলপ্যাডিং (Cellpadding) এবং সেলস্পেসিং (Cellspacing) এর পার্থক্য