پیشنهاد دوره:

توابع PHP extract()

مثال

<?php
$a = "Original";
مقدارهای کلید "Cat"، "Dog" و "Horse" را به متغیرهای $a، $b و $c اختصاص دهید:
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");;
extract($my_array)
?>

اجرای نمونه

echo "\$a = $a; \$b = $b; \$c = $c";

تعریف و کاربرد

توابع extract() متغیرها را از آرایه به جدول نمادها وارد می‌کند.

این تابع از نام‌های کلید آرایه به عنوان نام متغیر استفاده می‌کند و از ارزش‌های آرایه به عنوان ارزش متغیر استفاده می‌کند. برای هر عنصر آرایه، یک متغیر در جدول نمادها ایجاد می‌شود. دومین پارامتر نوع

برای指定 اینکه extract() چگونه با برخورد به متغیری که قبلاً وجود دارد و در آرایه نیز یک عنصر با نام مشابه وجود دارد، برخورد کند.

این تابع تعداد متغیرهایی که با موفقیت به جدول نمادها وارد شده‌اند را برمی‌گرداند.

نحوه‌ی نوشتنشرحextract(extract_rulesextract(prefix,
) پارامتر
شرح آرایه
extract_rules

ضروری. تعیین کنید که کدام آرایه باید استفاده شود

ممکنه‌یاردها:

  • EXTR_OVERWRITE - پیش‌فرض. اگر برخوردی باشد، متغیرهای موجود را تغییر دهید
  • EXTR_SKIP - اگر برخوردی باشد، متغیرهای موجود را تغییر ندهید
  • EXTR_PREFIX_SAME - اگر برخوردی باشد، به نام متغیر پیشوند اضافه کنید prefix
  • EXTR_PREFIX_ALL - به تمام نام‌های متغیر پیشوند اضافه کنید prefix
  • EXTR_PREFIX_INVALID - تنها در جلوی نام‌های متغیر نامعتبر یا عددی پیشوند اضافه کنید prefix
  • EXTR_IF_EXISTS - تنها در صورت وجود متغیری با نام مشابه در جدول نمادها، ارزش آن را تغییر دهید. بقیه را پردازش نکنید.
  • EXTR_PREFIX_IF_EXISTS - تنها در صورت وجود متغیری با نام مشابه در جدول نمادها، نام متغیر با پیشوند اضافه شده ایجاد کنید، بقیه را پردازش نکنید.
  • EXTR_REFS - متغیر را به عنوان مرجع استخراج کنید. متغیرهای وارد شده همچنان به ارزش پارامتر آرایه مراجعه می‌کنند.
prefix

اختیاری. لطفاً توجه کنید prefix فقط extract_type وقتی مقدار EXTR_PREFIX_SAME، EXTR_PREFIX_ALL، EXTR_PREFIX_INVALID یا EXTR_PREFIX_IF_EXISTS باشد، نیاز است.

یک خط زیر آورده می‌شود که پیشوند و نام کلیدهای آرایه با هم ترکیب می‌شوند.

جزئیات فنی

نتیجه: تعداد متغیرهایی که با موفقیت به جدول نمادها وارد شده‌اند را برمی‌گرداند.
نسخه PHP: 4+
رویدادهای به‌روزرسانی:

extract_rules مقدار EXTR_REFS در PHP 4.3 اضافه شده است.

extract_rules مقدار EXTR_IF_EXISTS و EXTR_PREFIX_IF_EXISTS در PHP 4.2 اضافه شده‌اند.

از PHP 4.0.5 به بعد، این فنکشن تعداد متغیرهایی که با موفقیت به جدول نمادها وارد شده‌اند را برمی‌گرداند.

extract_rules مقدار EXTR_PREFIX_INVALID در PHP 4.0.5 اضافه شده است.

از PHP 4.0.5 به بعد،extract_rules مقدار EXTR_PREFIX_ALL نیز شامل متغیرهای عددی است.

مثال‌های بیشتر

مثال 1

از تمام پارامترها استفاده کنید:

<?php
$a = "Original";
$my_array = array("a" => "Cat", "b" => "Dog", "c" => "Horse");
extract($my_array, EXTR_PREFIX_SAME, "dup");
echo "\$a = $a; \$b = $b; \$c = $c; \$dup_a = $dup_a";
?>

اجرای نمونه