Indexed Array
// ৩ ভাবে তৈরি
$fruits = ["আম", "জাম", "লিচু"];
$fruits = array("আম", "জাম", "লিচু");
$fruits[] = "কাঁঠাল"; // শেষে যোগ
// Access
echo $fruits[0]; // আম
echo count($fruits); // 4
// Loop
foreach ($fruits as $fruit) {
echo $fruit;
}
Associative Array (key-value)
$user = [
"name" => "করিম",
"age" => 25,
"email" => "karim@example.com",
"is_active" => true
];
echo $user["name"]; // করিম
// যোগ/পরিবর্তন
$user["phone"] = "01712345678";
$user["age"] = 26;
// Exists?
if (isset($user["email"])) { ... }
if (array_key_exists("email", $user)) { ... }
// Delete
unset($user["phone"]);
// Loop
foreach ($user as $key => $value) {
echo "$key: $value\n";
}
Multi-dimensional Array
$students = [
[
"name" => "করিম",
"marks" => [80, 90, 85]
],
[
"name" => "রহিম",
"marks" => [70, 75, 80]
]
];
echo $students[0]["name"]; // করিম
echo $students[0]["marks"][1]; // 90
foreach ($students as $student) {
echo $student["name"] . ": ";
echo array_sum($student["marks"]) . "\n";
}
গুরুত্বপূর্ণ Array Functions
$arr = [3, 1, 4, 1, 5, 9, 2, 6];
count($arr) // 8
array_sum($arr) // 31
min($arr) // 1
max($arr) // 9
array_unique($arr) // ডুপ্লিকেট সরায়
sort($arr); // ascending (by ref)
rsort($arr); // descending
array_reverse($arr) // উল্টো
in_array(5, $arr) // true
array_search(5, $arr) // index
array_push($arr, 7) // শেষে যোগ (multi)
array_pop($arr) // শেষেরটা
array_shift($arr) // প্রথমটা
array_unshift($arr, 0) // শুরুতে যোগ
array_slice($arr, 1, 3) // অংশ
array_merge($a, $b) // মিলানো
array_combine($keys, $values)
// Map/Filter/Reduce ⭐
$doubled = array_map(fn($n) => $n * 2, $arr);
$evens = array_filter($arr, fn($n) => $n % 2 == 0);
$sum = array_reduce($arr, fn($carry, $n) => $carry + $n, 0);
// Key-value
array_keys($user) // ["name", "age", ...]
array_values($user) // ["করিম", 25, ...]
array_flip($user) // key ↔ value
// Sort
sort($arr); // values, reindex
asort($user); // values, keep keys
ksort($user); // by keys
usort($arr, fn($a,$b) => $a-$b); // custom
Spread Operator (PHP 7.4+)
$a = [1, 2, 3];
$b = [4, 5, 6];
$c = [...$a, ...$b]; // [1,2,3,4,5,6]
function sum(...$nums) {
return array_sum($nums);
}
echo sum(1, 2, 3, 4); // 10
Destructuring
[$a, $b, $c] = [1, 2, 3];
// $a=1, $b=2, $c=3
// Associative
["name" => $name, "age" => $age] = $user;
// foreach-এ
foreach ($users as ["name" => $name, "age" => $age]) {
echo "$name: $age\n";
}