آرایهها در PHP
محصول اورجینال INZIP
دانلود پوسته وردپرس باریستا؛ قالب کافیشاپ، رُستری قهوه و فروشگاه قهوه دوزبانه با منوی رومیزی، رزرو آنلاین میز با کد پیامکی و ووکامرس. طراحی اختصاصی inzip.ir
تحویل آنی
آپدیت رایگان
بدون قفل لایسنس
پشتیبانی واقعی
٪۲۶
تخفیف ویژه
۱,۰۳۰,۰۰۰ تومان
آرایهها در PHP: از مقدماتی تا پیشرفته
آرایهها یکی از پرکاربردترین ساختارهای داده در PHP هستند. در واقع آرایه در PHP یک نقشه مرتبشده است که میتواند شامل چندین مقدار تحت یک نام باشد. در این مقاله به صورت کامل با آرایهها آشنا میشوید.
انواع آرایه در PHP
PHP سه نوع آرایه اصلی دارد:
انواع آرایه در PHP
Indexed
[0, 1, 2, 3]
کلید عددی
Associative
["key" => value]
کلید رشتهای
Multidimensional
آرایه تو در تو
سلسله مراتبی
آرایه اندیسدار (Indexed Array)
سادهترین نوع آرایه که با اعداد شروع از صفر اندیسگذاری میشود:
<?php
// روش اول
$fruits = ["سیب", "پرتقال", "موز", "انگور"];
// روش دوم
$colors = array("قرمز", "آبی", "سبز");
// دسترسی
echo $fruits[0]; // سیب
echo $colors[2]; // سبز
// افزودن عنصر جدید
$fruits[] = "هلو";
?>
آرایه انجمنی (Associative Array)
در این نوع، کلیدها به جای عدد، رشتهای هستند:
<?php
$user = [
"name" => "علی محمدی",
"age" => 32,
"email" => "ali@example.com",
"city" => "تهران"
];
echo $user["name"]; // علی محمدی
// افزودن کلید جدید
$user["phone"] = "09123456789";
?>
آرایه چندبعدی (Multidimensional)
زمانی استفاده میشود که بخواهیم دادههای پیچیدهتر مانند لیست کاربران با چندین ویژگی ذخیره کنیم:
<?php
$students = [
["name" => "زهرا", "grade" => 19],
["name" => "محمد", "grade" => 18],
["name" => "نگار", "grade" => 20]
];
echo $students[0]["name"]; // زهرا
echo $students[2]["grade"]; // 20
?>
توابع مهم آرایه
۱. شمارش و بررسی
<?php
count($fruits); // تعداد عناصر
array_key_exists("name", $user); // بررسی وجود کلید
in_array("سیب", $fruits); // بررسی وجود مقدار
?>
۲. مرتبسازی
<?php
$numbers = [3, 1, 4, 1, 5, 9, 2, 6];
sort($numbers); // صعودی
rsort($numbers); // نزولی
asort($user); // بر اساس مقدار (آرایه انجمنی)
ksort($user); // بر اساس کلید
?>
۳. فیلتر و تبدیل
<?php
// array_map: اعمال تابع روی هر عنصر
$doubles = array_map(fn($n) => $n * 2, $numbers);
// array_filter: فیلتر کردن عناصر
$even = array_filter($numbers, fn($n) => $n % 2 === 0);
// array_reduce: کاهش آرایه به یک مقدار
$sum = array_reduce($numbers, fn($carry, $item) => $carry + $item, 0);
?>
تکرار روی آرایهها
حلقه foreach
بهترین روش برای پیمایش آرایهها:
<?php
foreach ($fruits as $fruit) {
echo "$fruit <br>";
}
foreach ($user as $key => $value) {
echo "$key: $value <br>";
}
?>
حلقه for
برای آرایههای اندیسدار ساده مناسب است:
<?php
for ($i = 0; $i < count($fruits); $i++) {
echo $fruits[$i] . "<br>";
}
?>
عملیات پیشرفته روی آرایه
ادغام آرایهها
<?php
$a = ["قرمز", "آبی"];
$b = ["سبز", "زرد"];
$merged = array_merge($a, $b); // ["قرمز", "آبی", "سبز", "زرد"]
$combined = [...$a, ...$b]; // با Spread
?>
استخراج مقادیر و کلیدها
<?php
$keys = array_keys($user); // ["name", "age", "email", "city"]
$values = array_values($user); // ["علی محمدی", 32, ...]
?>
تکهتکه کردن آرایه
<?php
$numbers = range(1, 10);
$chunks = array_chunk($numbers, 3);
// [[1,2,3], [4,5,6], [7,8,9], [10]]
?>
تخریب آرایه (Destructuring)
از PHP 7.1 به بعد میتوان به راحتی مقادیر را از آرایه استخراج کرد:
<?php
$point = ["x" => 10, "y" => 20, "z" => 30];
["x" => $x, "y" => $y, "z" => $z] = $point;
echo $x + $y + $z; // 60
// با list
list($first, $second, $third) = [1, 2, 3];
?>
آرایههای خاص: SplFixedArray و ArrayObject
برای کاربردهای خاص، PHP کلاسهای ویژهای ارائه میدهد:
<?php
// آرایه با اندازه ثابت (سریعتر)
$fixed = new SplFixedArray(5);
$fixed[0] = "اول";
$fixed[1] = "دوم";
// آرایه شیءگرا
$obj = new ArrayObject([1, 2, 3]);
$obj->append(4);
?>
اشتباهات رایج
استفاده از array_search بدون بررسی نوع
فراموش کردن اینکه in_array به طور پیشفرض نوع را مقایسه نمیکند
تغییر آرایه حین پیمایش با foreach (با ارجاع & مشکل ایجاد میشود)
استفاده از array_merge در حلقه که کارایی پایینی دارد
نتیجهگیری
آرایهها قلب تپنده PHP هستند. تسلط بر توابع آرایهای نه تنها کد شما را کوتاهتر میکند، بلکه عملکرد بهتری نیز به همراه دارد. توصیه میشود برای دادههای پیچیدهتر از کلاسها و Collection ها استفاده کنید.
٪۴۱
دوره اختصاصی INZIP
آموزش حرفه ای HTML از صفر در ۱۶ ویدیو: سند، متن، لینک، تصویر، جدول، فرم، معناییسازی، دسترسپذیری و سئو، تا پروژهٔ کامل صفحهٔ فروشگاه محصول.
تماشای آنلاین + دانلود
دسترسی آنی و همیشگی
بهروزرسانی رایگان
کیفیت Full HD
۹۹۰,۰۰۰ تومان
۵۹۰,۰۰۰ تومان
سود شما ۴۰۰,۰۰۰ تومان
مشاهده سریال