Php Data type

 

প্রতিটি Programing Language Data Type আছে। একটা variable a কি ধরনের ডেটা আছে সেটা চিনতে হয় যেমন $x = 9; অর্থ্যাৎ x এর মান এখন এবং একটি পূর্নসংখ্যা। মানটি পূর্নসংখ্যা না হয়ে দশমিকও হতে পারত যেমন .৫৪ বা এরুপ কিছু অথবা একটি অক্ষরের সারিও হতে পারত যেমন $x = 'spfoundationbd' ইত্যাদি। অর্থ্যাৎ চিনিয়ে দিতে হয় যে তোমার (ভেরিয়েবলের) মধ্যে যে ডেটা টুকু রাখলাম সেটা একটা পূর্নসংখ্যা বা স্ট্রিং বা দশমিক সংখ্যা (বা যতরকম ডেটা টাইপ আছে) সুতরাং $x = 9 এর অর্থ হল $x এখন integer, $x = 'spfoundationbd' এর অর্থ হল $x এখন স্ট্রিং, $x = 5.36 এর অর্থ হল $x এখন floating number ইত্যাদি।

পিএইচপিতে কয়েক ধরনের ডেটা টাইপ বা ধরন আছে। অর্থ্যাৎ পিএইচপি ভেরিয়েবল ধরনের বা টাইপের ডেটা নিতে পারে এবং যেকোন অপারেশন করতে পারে। মুলত পিএইচপির ডেটাকে টি বিভাগে ভাগ করা হয়েছে

. Scaler Data Type : এখানে ধরনের Data Type আছে

. boolean বা বুলিয়ান: ধরনের Data র শুধু ২টি মান থাকতে পারে TRUE অথবা FALSE, php তে অনেক function আছে যেগুলি বুলিয়ান রিটার্ন করে। বুলিয়ান ডেটা সাধারনত if কন্ডিশনে ব্যবহার করা হয়। কোন একটা ভেরিয়েবলে বুলিয়ান ডেটা আছে কিনা সেটা দেখার জন্য is_bool() একটি ফাংশন আছে। যেমন

<?php

$x = TRUE;

$y = 9;

var_dump(is_bool($y));// output bool(false)

var_dump(is_bool($x));// output bool(true)

?>

দেখুন $y যখন চেক করেছি তখন is_bool() এর output false এসেছে কেননা $y এর মান বুলিয়ান নয় বরং  অর্থ্যাৎ পূর্নসংখ্যা বা integer. এভাবে যেকোন ভেরিয়েবল কিংবা ফাংশনের রিটার্ন মান চেক করতে পারেন।

. integer বা পূর্নসংখ্যা: পূর্নসংখ্যা তথা দশমিক ছাড়া সংখ্যা হচ্ছে এই ধরনের Data যেমন , , -৬৫, - ইত্যাদি হচ্ছে integer ডেটা। is_int() Function দিয়ে যেকোন variable কে চেক করে দেখতে পারেন, যদি পূর্নসংখ্যা (integer) হয় তাহলে TRUE রিটার্ন করবে অন্যথায় FALSE. পূর্নসংখ্যা ধনাত্নক কিংবা ঋনাত্নক হতে পারে এমনকি দশভিত্তিক (decimal- 10 based) ছাড়াও হেক্সাডেসিমাল (১৬-ভিত্তিক), octal (-ভিত্তিক), দ্বিমিক (-ভিত্তিক বা বাইনারি) সংখ্যাও integer হতে পারে। যেমন

<?php

$x = 1011100; //binary number 92

var_dump($x);

?>

Output

int(1011100)

 

. Float বা দশমিক সংখ্যা: দশমিক সংখ্যা যেমন .২৩৬, . ইত্যাদি হচ্ছে float number বা doubles বা real number

<?php

$x = 5.2054;

var_dump($x);

?>

Output

float(5.2054)

সূচকীয় ফরেমেটেও float number লেখা যায় যেমন $x = 2x6e5;

 . String বা অক্ষরের সারি: যেকোন অক্ষর সিঙ্গেল কোট, Double কোটেশন, heredoc এবং nowdoc সিনট্যাক্সের মধ্যে রাখলে সেটা String যেমন 

<?php

$x = 'spfoundationb';

$x = "spfoundationb";

$x = <<<HTML

<p>Spfoundationb is a bengali tutorial site</p>

HTML;

?>

অবশ্য সব অক্ষর (ক্যারেক্টার) এর সাপোর্ট নেই, সোজা কথা ইউনিকোড ক্যারেক্টার সাপোর্টেড নয়। পিএইচপি ভার্সন সামনে আসছে সেখানে ইউনিকোড ক্যারেক্টারও সাপোর্ট থাকবে।

 

এছাড়া আরো দুটি বিশেষ Data type  আছে resource এবং NULL

resource সাধারনত বিভিন্ন ধরনের ডেটা হয়ে থাকে যেমন ডেটাবেসে অপারেশন করে যেসব Data Return করে সেগুলি resource ডেটা হিসেবে দেখে। আর NULL হল ফাকা ডেটা। কোন ভেরিয়েবল ডিক্লেয়ার করা হল কিন্তু কোন মান assign করা হলনা তাহলে সেই ভেরিয়েবলটির মান null হয়ে যায়। 

Type জাগলিং 

যেকোন language a  যখন একটা ভেরিয়েবলে কিছু নিবেন তখন বলে দিতে হবে যে কোন ধরনের Data এটা (টেকনিকালি এটাকে বলে টাইপ ডিক্লেয়ার করা বা explicit type definition) শুধু php তে কাজটি করতে হয়না। php  ইন্জিন ডেটা দেখে নিজে নিজেই বুঝে নেয় যে আপনি কি ধরনের data দিয়েছেন। এই অটোমেটিক type চিনে নেয়ার প্রক্রিয়ার নাম "টাইপ জাগলিং" এটা পিএইচপির একটা শক্তিশালি বৈশিষ্ট্য।

type কাস্টিং

php তে টাইপ পরিবর্তন করা যায়