فشرده سازی (compact)
در «فشرده سازی (compact)» از «متغیر (Variable)» ها یک آرایه می سازیم. نام متغیر را می دهیم و مقدارش داخل آرایه قرار می گیرد. این شبیه جمع کردن برگه های نمره در یک پوشه است.
compact چیست؟
تابع compact() از نام های متغیر، یک آرایه انجمنی می سازد. بنابراین کلید، نام متغیر است و مقدار، همان مقدار متغیر. اگر نام داده شده، متغیری نداشته باشد، رد می شود.
مثال پایه: ساخت آرایه از متغیرها
<?php
$firstname = "Peter";
$lastname = "Griffin";
$age = "41";
$result = compact("firstname", "lastname", "age");
print_r($result);
?>
مثال بیشتر: آرایه نام ها و رشته نامعتبر
<?php
$firstname = "Peter";
$lastname = "Griffin";
$age = "41";
$name = array("firstname", "lastname");
$result = compact($name, "location", "age");
print_r($result);
?>
نحوه نگارش (Syntax)
<?php
// compact(var1, var2, ...)
$result = compact($varNamesOrStrings);
?>
نکات کاربردی و تغییرات
نکته: رشته هایی که با نام متغیر موجود یکی نباشند، نادیده گرفته می شوند.
نکته: از PHP 7.3 اگر نامِ متغیرِ unset بدهی، خطای E_NOTICE می دهد.
نکته: مقدار بازگشتی یک آرایه انجمنی از نام ها و مقدارهاست.
نکته: برای دسترسی سریع، صفحه فشرده سازی را نشانه گذاری کن.
مراحل تمرین سریع
- چند متغیر ساده بساز.
- نام ها را به compact بده.
- آرایه خروجی را print_r کن.
جمع بندی سریع
- از نام متغیرها آرایه می سازد.
- کلید نام است و مقدار، مقدار متغیر.
- نام نامعتبر، نادیده گرفته می شود.
- از PHP 7.3 برای unset، E_NOTICE می گیرد.
- خروجی همیشه یک آرایه است.