PHP Basic
PHP echo and print statement
PHP তে সার্ভার থেকে কোনো কিছু অথবা যেকোনো ফলাফল ব্রাউজারে দেখাতে চাইলে আপনাকে echo অথবা print দুটির যেকোনো একটি ব্যবহার করতে হবে। PHP তে এই দুইটা হচ্ছে Language Construct । আর language construct গুলো সাধারণত function থেকে দ্রুততর হয়। কেননা language construct গুলো কোনো রকম কম্পাইল ছাড়াই প্রয়োজনীয় ফলাফল দেখাতে পা রে, অন্য দিকে function গুলো কম্পাইল হওয়ার পর ফলাফল দেখাতে পারে। আর এই দুইটা Language Construct হওয়াতে আপনি parenthesis “i.e ( )” ছাড়া অথবা parenthesis সহ দুই ভাবেই লিখতে পারেন।
যেমন নিচের সব পদ্ধতিই সঠিক :
<?php echo "Hello world"; echo ("Hello World"); print "Hello World"; print ("Hello World"); ?>
language construct গুলোকে যেকোনো ল্যাঙ্গুয়েজের মৌলিক উপাদান ও বলা হয়ে থাকে।
Php তে echo এবং print এর মধ্যে কোনো পার্থক্য আছে ? উদাহরণসহ দেখতে চাই।
হাঁ echo এবং print এর মধ্যে বেশ কিছু পার্থক্য আছে। চলুন উদাহরণসহ দেখে নেয়া যাক :
১. echo তে আপনি একাদিক parameter নিতে পারবেন, যদি parenthesis ব্যবহার না করেন। অন্যদিকে print এ আপনি শুধু একটি parameter নিতে পারবেন, হোক সেটা parenthesis সহ অথবা parenthesis ছাড়া। নিচের উদাহরণ গুলো লক্ষ্য করুন :
<?php echo "1"; //valid echo "1","2"; //valid echo ("1","2"); //Invalid print "1"; //valid print ("2"); //Valid print "1","2"; //Invalid print ("1","2"); //Invalid ?>
উপরের ২,৩,৫,৬ নম্বর লাইন সঠিক। বাকি গুলো ভুল দেখাবে।
২. echo এর কোনো return value নেই। অন্যদিকে print boolean true মানে 1 রিটার্ন করে। নিচের উদাহরণ দেখলেই বাকিটা ক্লিয়ার হয়ে যাবে:
<?php echo print (5); // Output 51 ?>
এখানে print এর মাধ্যমে 5 কে ফলাফল হিসাবে পাই । তারপর print এর return ফলাফল 1 আমরা echo এর মাধ্যমে পাই। যার জন্য আমরা এখানে ফলাফল হিসাবে একত্রে 51 পাই।
আরো সহজ ভাবে বুঝার জন্য নিচের উদাহরণটি দেখুন :
<?php $x = print "Hello World"; echo $x; //Hello World 1
৩. echo কোনো কিছু রিটার্ন করেনা , অর্থাৎ এটি void বা ফাঁকা রিটার্ন করে। এর মানে এটি কোনো expression এর পার্ট হিসাবে ব্যবহার করা যাবে না বা echo কে কোনো ভেরিয়েবলে এসাইন করা যাবে না।
আবার অন্যদিকে print যেহেতু Boolean True বা 1 রিটার্ন করে , তাই আপনি চাইলে এটিকে কোনো expression এর পার্ট হিসাবে ব্যবহার করতে পারেন বা এটি কে যেকোনো ভেরিয়েবলে এসাইনও করতে পারেন।
চলুন ব্যাপারটা নিম্নোক্ত উদাহরণ দিয়ে আরো ভালো ভাবে বুঝা যাক :
ধরুন আপনি দুটি string কে জোড়া লাগাতে চান এবং result টি একটি variable এ সংরক্ষণ করতে চান। আপনি echo দিয়ে সরাসরি এটি করতে পারবেন না কারণ এটি কোনো value কে return করে না যা আপনি একটি ভেরিয়েবলকে বরাদ্দ করতে পারেন। নিচের উদাহরণটি লক্ষ্য করুন:
$string1 = "Hello, "; $string2 = "World!"; $result = echo $string1 . $string2; // This will cause a syntax error
উপরের কোডে, $result ভেরিয়েবলে echo-এর ফলাফল বরাদ্দ করার চেষ্টা করলে একটি syntax error দেখা দেবে কারণ echo কোনো কিছু রিটার্ন করেনা বা দেয় না যা একটি expression এ ব্যবহার করা যেতে পারে।
এই কাজটি আপনি echo দিয়ে এটি অর্জন করতে হলে , আপনাকে দুটি variable কে পৃথকদুটি echo statement এ ব্যবহার করতে হবে:
$string1 = "Hello, "; $string2 = "World!"; echo $string1; echo $string2;
যাইহোক, আপনি যদি strings দুটিকে জোড়া (concatenate) লাগাতে চান এবং একটি variable এ result কে রাখতে বা assign করতে চান, তাহলে আপনার concatenation operator (.) বা print statement ব্যবহার করা উচিত
concatenation operator (.) ব্যবহার করে উদাহরণ:
$string1 = "Hello, "; $string2 = "World!"; $result = $string1 . $string2; // $result now contains "Hello, World!"
print ব্যবহার করে উদাহরণ:
$string1 = "Hello, "; $string2 = "World!"; $result = print $string1 . $string2; // $result now contains 1
echo এবং print এর মধ্যে পার্থক্য নিচের টেবিলে তুলে ধরা হলো:
Feature | Echo | |
---|---|---|
Returns a value | No | 1 |
Can take multiple parameters | Yes | No |
Is slightly faster | Yes | No |
Can be used in expressions | No | Yes |
One thought on “PHP echo and print statement”
Leave a Reply
You must be logged in to post a comment.
Excellent.