CodeIgniter-এ Views হলো এমন একটি অংশ, যা অ্যাপ্লিকেশনের আউটপুট ইউজারের কাছে উপস্থাপন করে। ডাইনামিক ডেটা পাস করে View-তে কন্টেন্ট তৈরি করা খুবই সাধারণ একটি কাজ। Controller থেকে ডেটা পাঠিয়ে View-তে প্রদর্শন করা হয়।
app/Views
ডিরেক্টরিতে রাখা হয়।.php
এক্সটেনশন ব্যবহার করে।উদাহরণস্বরূপ, app/Views/products_list.php
ফাইল তৈরি করুন:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Product List</title>
</head>
<body>
<h1>Product List</h1>
<ul>
<?php foreach ($products as $product): ?>
<li><?php echo $product['name']; ?> - <?php echo $product['price']; ?> BDT</li>
<?php endforeach; ?>
</ul>
</body>
</html>
Controller এর কাজ হলো Model থেকে ডেটা নিয়ে View-তে পাঠানো।
app/Controllers/Product.php
ফাইল তৈরি করুন:
<?php
namespace App\Controllers;
use App\Models\ProductModel;
class Product extends BaseController
{
public function index()
{
// Model লোড করা
$productModel = new ProductModel();
// ডেটা ফেচ করা
$data['products'] = $productModel->findAll();
// View-তে ডেটা পাস করা
return view('products_list', $data);
}
}
app/Config/Routes.php
ফাইল খুলুন এবং Controller এর জন্য Route তৈরি করুন:
$routes->get('products', 'Product::index');
return view('view_name', $data)
এর মাধ্যমে ডেটা পাস করা হয়।$data
অ্যারেকে ভেরিয়েবল হিসেবে ব্যবহার করা হয়।$data['title'] = 'My Product Page';
return view('products_list', $data);
View ফাইল (products_list.php
):
<h1><?php echo $title; ?></h1>
$data = [
'title' => 'Product List',
'products' => [
['name' => 'Product 1', 'price' => 100],
['name' => 'Product 2', 'price' => 200],
]
];
return view('products_list', $data);
View ফাইল (products_list.php
):
<h1><?php echo $title; ?></h1>
<ul>
<?php foreach ($products as $product): ?>
<li><?php echo $product['name']; ?> - <?php echo $product['price']; ?> BDT</li>
<?php endforeach; ?>
</ul>
CodeIgniter-এ আপনি partials ব্যবহার করে View ফাইলগুলোকে বিভক্ত করতে পারেন। এটি কোড পুনরায় ব্যবহারযোগ্য এবং পরিষ্কার রাখতে সাহায্য করে।
app/Views/partials/header.php
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?php echo $title; ?></title>
</head>
<body>
app/Views/partials/footer.php
:
</body>
</html>
app/Views/products_list.php
:
<?php echo view('partials/header'); ?>
<h1><?php echo $title; ?></h1>
<ul>
<?php foreach ($products as $product): ?>
<li><?php echo $product['name']; ?> - <?php echo $product['price']; ?> BDT</li>
<?php endforeach; ?>
</ul>
<?php echo view('partials/footer'); ?>
যদিও CodeIgniter-এ ডিফল্ট টেমপ্লেট ইঞ্জিন নেই, তবে আপনি Blade বা অন্য টেমপ্লেট ইঞ্জিন সহজেই ইন্টিগ্রেট করতে পারেন। তবে CodeIgniter এর নিজস্ব পদ্ধতিতে PHP কোড দিয়ে টেমপ্লেট তৈরি করাই যথেষ্ট কার্যকরী।
return view()
মেথড ব্যবহার করা হয়।$variable_name
ব্যবহার করা হয়।CodeIgniter-এ ডাইনামিক ডেটা পাস করা সহজ এবং এটি অ্যাপ্লিকেশন ডেভেলপমেন্টকে দ্রুত এবং কার্যকর করে তোলে।
Read more