পিএইচপি শেখার জন্য আপনার প্রথমেই প্রয়োজন হবে পিএইচপি সাপোর্ট করে এমন একটি ওয়েব সার্ভার যার জন্য টাকা গুণতে হবে। তবে যেহেতু আমাদের টাকা পয়সা নাই তাই আমরা সেদিকে যাচ্ছি না।
পিসিতে লোকাল সার্ভার ইন্সটল করে আমরা পিএইচপি শেখা শুরু করবো। তাহলে আসেন লোকাল সার্ভার ইন্সটল করি। লোকাল সার্ভার ইন্সটল করার অনেক পদ্ধতি আছে।
এতো জটিলতায় না গিয়ে XAMPP for Windows 1.8.3 PHP 5.5 04/12/2013 লিঙ্ক থেকে Installer ভার্সনটা নামিয়ে আপনার কম্পিউটারে C ড্রাইভে ইন্সটল করে ফেলুন। ইন্সটল করা ওয়ান টু ব্যাপার, তাই সেই বিস্তারিত আলোচনায় না যাই। তবে ইন্সটল করার সময় BitNami for XAMPP এরকম কিছু আসলে আনচেক দিয়ে দিন।
ব্যস, আশা করি ইন্সটল করে ফেলেছেন। ইন্সটল করা হলে C ড্রাইভের XAMPP ফোল্ডারে চলে যান।
নীচের ছবি দেখুনঃ
এরপর ফোল্ডারের ভেতর xampp-control.exe ফাইলটি ক্লিক করুন। নীচের মতো ছবি এসেছে কীনা লক্ষ্য করুন।
এবার Apache এবং MySQL এর ডানপাশে Start বাটনে ক্লিক করে সার্ভার চালু করুন। উইন্ডোটি মিনিমাইজ করে রাখুন। যদি Start না হয় তাহলে আপনার পিসিতে স্কাইপে চালু থাকলে সেটি ক্লোজ করে ফেলুন।
এরপরেও চালু না হলে পুনরায় আনইন্সটল করে ইন্সটল করুন।
এবার ফায়ারফক্স কিংবা ক্রোম ব্রাউজার চালু করে, সেখানে এড্রেসবারে লিখুন http://localhost/ এরপর ভাষা হিসেবে English ঠিক করে নিন। এরপর যদি নীচের মতো ছবি আসে তাহলে আপনি এখন পিএইচপি শেখার জন্য পুরোপুরি প্রস্তত!
ছোট্ট একটি কাজ বাকী আছে। পিএইচপি কোড লেখার জন্য কি ব্যবহার করবেন? আমি ব্যক্তিগতভাবে SublimeText ব্যবহার করি, আপনিও চাইলে আমার পূর্বের টিউন থেকে থেকে এই কোড এডিটরটি ডাউনলোড করে নিতে পারেন।
ওয়েবসাইট তৈরির জন্য পিএইচপি জনপ্রিয় একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ, এতে এইচটিএমএল এর কোডগুলো এমবেডেড করে দেয়া থাকে ফলে আপনি এইচটিএমএল জানা থাকলে খুব দ্রুত পিএইচপি শিখে ফেলতে পারবেন।
এইচটিএমএল/সিএসএস দিয়ে আপনি একটি ওয়েবপেইজ তৈরি করতে পারবেন তবে সেটা স্ট্যাটিক। কিন্তু পিএইচপি জানা থাকলে স্ট্যাটিককে আপনি সহজেই ডাইনামিক ওয়েবপেইজে রুপান্তর করতে পারবেন।
আসুন তবে এবার প্রথম পিএইচপি কোড লেখা যাক। তবে আগে নিশ্চিত হয়ে নিন আপনার XAMPP ইন্সটল এবং চালু আছে কীনা। এবার আপনার পিসি'র XAMPP ফোল্ডারে গিয়ে htdocs নামের একটি ফোল্ডার আছে সেটি ওপেন করুন।
সেখানে mytest.php নামে একটি নতুন ফাইল খুলুন।
এবার আপনার ব্রাউজারের এড্রেসবারে লিখুন http://localhost/mytest.php/ এন্টার দিন। কিছুই আসেনি। সাদা পেইজ! এবার আসুন আমরা এখানে কিছু একটা আনি। আমরা htdocs ফোল্ডারে চলে যাই, সেখান mytest.php ফাইলের ওপর রাইট ক্লিক করে Open with Sublime Text সিলেক্ট করুন।
Sublime text টি ডাউনলোড করে নিন এখান থেকে।
এবার আপনার পরিচিত এইচটিএমএল কোড সহ পিএইচপি কোডটি লিখুন
উপরের <?php এবং ?> এর ভেতরে লেখা কোডটিই আমাদের পিএইচপি কোড। এবার কীবোর্ডের ctrl+s দিয়ে সেভ করুন এবং আপনার ব্রাউজারে এবার এড্রেসবারে লিখুন http://localhost/mytest.php/ এবং এন্টার দিন। কি দেখতে পাচ্ছেন? this is my first php code writing!
তবে আপনি যদি ব্রাউজারে রাইট ক্লিক করে পেইজ সোর্স ওপেন করেন তাহলে সেখানে কোনো পিএইচপি কোড দেখতে পাবেন না! যা দেখবেন সেটা হলো আপনার অতি পরিচিত এইচটিএমএল কোড!
অর্থ্যাৎ <?php এবং ?> এর ভেতরে লেখা কোডটি সার্ভার আগেই ট্রান্সলেট করে এইচটিএমএল আউটপুট তৈরি করে পুরো ডকুমেন্টকেই এইচটিএমএল ডকুমেন্টে পরিণত করে আপনার ব্রাউজারে হাজির করেছে। এটাই হচ্ছে পিএইচপি প্রোগ্রামিংয়ের কাজ! উল্লেখ্য <? ও ?> এই দুটি হলো পিএইচপি এর script language এবং পিএইচপিতে প্রতিটি লাইন শেষে ; দিতে হয়।
<body> ও </body> ট্যাগের মধ্যে পিএইচপি কোড লিখতে হয়।
<?php echo ?> কে সংক্ষিপ্ত করে <? = ?> এভাবেও লেখা যায়। যেমন উপরের কোডটিকে যদি আপনি এভাবে লেখেন
তাহলেও একই ফলাফল প্রদর্শিত হবে।
পিএইচপিতে ব্রাউজারে আউটপুটের জন্য echo( ) ব্যবহার ছাড়াও print( ) ব্যবহার করে দেখানো যায়। যেমন আমরা যদি echo এর বদলে এভাবে লিখি
তাহলেও ব্রাউজারে একই আউটপুট আসবে।
তবে আপনি চাইলেই যত্রতত্র echo অথবা print ব্যবহার করতে পারেন না। পিএইচপিতে print ব্যবহার করা হয় বিভিন্ন কোড ডিবাগিং এর সময়, যেমন কোন অ্যারে echo( ) দিয়ে দেখা যায়না কিন্তু print( ) দিয়ে দেখা যায়। এছাড়াও আরও কিছু ব্যাপার স্যাপার আছে যেগুলো সামনের পর্বে দেখানো হবে
বিঃদ্রঃ echo( ) অথবা print( ) এগুলোকে বলা হয় স্টেটমেন্ট। এর ভেতর যা লেখা হয় সেগুলোকে string বলে যেমন উপরের কোডে this is my first php code writing! এটি একটি string.
ব্রাউজারে যদি ডায়নামিক ডাটা আউটপুট করাতে চান তাহলে আপনি printf( ) স্টেটমেন্ট ব্যবহার করে সেটা করতে পারবেন। নীচে একটি উদাহরণ দেখুনঃ
ব্রাউজারে ফলাফল দেখাবে last 3days i was in deep sleep, মজার তাই না? এখানে %d এর মান 3 দেখানো হয়েছে তাই এটি এসেছে।
%d কে বলা হয় type specifier, এরকম আরও কিছু type specifier হচ্ছে %s, %f, %0 ইত্যাদি। আমরা একাধিক type specifier দিয়ে একটি কোড করে দেখি এবারঃ
ব্রাউজারে ফলাফল দেখুন 1971 bangladesh got her independency, and now 2014 bangladesh is developing country, এখানে type specifier এ %d এবং %s এ আমি $year এবং $now এর মান নির্ধারণ করে দিয়েছি।
printf( ) স্টেটমেন্ট এর মতো আর একটি মজার স্টেটমেন্ট হলো sprintf( ), এটির কাজ হলো কোনো একটা ভেরিয়েবলে যোগ বিয়োগ গুণ ভাগ করে, সেটি echo( ) স্টেটমেন্টের মাধ্যমে ব্রাউজারে আউটপুট দেখাতে পারবেন। যেমনঃ
ব্রাউজারে ফলাফল আসবে the results of 264.24/35 is 7.55 এখানে %.2f এর মাধ্যমে আমি দশমিকের পর কয়টি সংখ্যা চাই সেটি নির্ধারণ করে দিয়েছি। কি দারুণ তাই না! আপনি যেভাবে দিচ্ছেন সেভাবেই ব্রাউজারে প্রদর্শিত হচ্ছে! এটি অবশ্য আপনি সরাসরি printf( ) স্টেটমেন্ট দিয়েও ব্রাউজারে প্রদর্শন করাতে পারেন, যেমনঃ
একই ফলাফল আসবে।
তবে sprintf( ) স্টেটমেন্ট ব্যবহার হয় তখন, যখন আপনি এটি ব্রাউজারে আউটপুট চাচ্ছেন না তবে এর মান কোডে কোথাও ব্যবহার করতে চাচ্ছেন, এ সম্পর্কে পরবর্তীতে আলোচনা করা হবে।
এইচটিএমএল এ কমেন্ট ব্যবহারের কথা মনে আছে? পিএইচপিতেও সেরকম কমেন্ট ব্যবহার করা যায়। এটা করা হয় মূলত অন্য কেউ যাতে কোডটি বুঝতে পারে তাই কোডের পাশে কমেন্ট যোগ করে সেই কোড সম্পর্কে কিছু কথা লিখে দেয়া এবং এটা ব্রাউজারে প্রদর্শিত হবে না। যেমনঃ
এখানে দেখুন // এবং # এর সাহায্যে একটি লাইনকে কমেন্ট আকারে দেখানো হয়েছে এবং /*...*/ কে অনেকগুলো লাইনকে কমেন্ট আকারে দেখানো হয়েছে। এটি ব্রাউজারে ফলাফল দেখুন, লাইনগুলো ভেঙে এসেছে।
কারণ আমি এখানে এইচটিএমএল এর <br> ট্যাগটি ব্যবহার করেছি, এবং সেটা . দিয়ে আগের string এর সাথে সংযুক্ত করেছি।
আগেই বলেছি পিএইচপিতে এইচটিএমএলের বিভিন্ন কোড এমবেডেড করে দেয়া, ফলে আপনি খুব সহজেই বিভিন্ন এইচটিএমএল ট্যাগ ব্যবহার করতে পারেন, যেমনঃ
ব্রাউজারে ফলাফল দেখুন
এভাবে প্র্যাকটিস করতে থাকুন নিজে নিজে।
এটি পূর্বে আমার ব্যক্তিগত ব্লগে প্রকাশিত
সামনের পর্বে থাকছে ভ্যারিয়েবল নিয়ে বিস্তারিত আলোচনা
।
অনলাইনে ছড়িয়ে ছিটিয়ে থাকা কথা গুলোকেই সহজে জানবার সুবিধার জন্য একত্রিত করে আমাদের কথা । এখানে সংগৃহিত কথা গুলোর সত্ব (copyright) সম্পূর্ণভাবে সোর্স সাইটের লেখকের এবং আমাদের কথাতে প্রতিটা কথাতেই সোর্স সাইটের রেফারেন্স লিংক উধৃত আছে ।