هلپرفانکشن Array

مجتبی پاکزاد کدایگنایتر 3.1.9 در حال تکمیل رایگان

فایل هلپر Array حاوی فانکشن‌هایی است که به شما در کار با آرایه‌ها کمک می‌کنند.

نحوه بارگذاری این هلپرفانکشن

با کد زیر می‌توانید این هلپرفانکشن را لود کنید:

$this->load->helper('array');

فانکشن‌های موجود

با لود این هلپر، فانکشن‌های زیر در دسترس خواهند بود:

elements($items, $array[, $default = NULL])
پارامترها
  • $item نوع استرینگ - کلید آیتم مورد نظر برای استخراج از آرایه
  • $array نوع آرایه - آرایه ورودی
  • $default نوع بولین - مقدار بازگشتی در صورت معتبر نبودن آرایه
مقدار بازگشتی در صورتی عدم موفقیت NULL و در صورت موفقیت آیتم مورد نظر از آرایه
نوع مقدار بازگشتی mixed (بیش از یک نوع ممکن است.)

امکان استخراج یک آیتم از آرایه را ارائه می‌دهد. این فانکشن بررسی می‌کند که آیا اندیس مورد نظر سِت شده و اگر سِت شده، آیا مقدار دارد یا نه. اگر مقدار داشته باشد، مقدار آن را برمی‌گرداند، اگر مقدار نداشته باشد NULL برمی‌گرداند، مگر اینکه مقدار پیش‌فرضی را به عنوان پارامتر سوم به این فانکشن داده باشید تا اگر آیتم مورد نظر دارای مقدار نبود، آن مقدار پیش‌فرض را برگرداند.

مثال

$array = array(
        'color' => 'red',
        'shape' => 'round',
        'size'  => ''
);

echo element('color', $array); // returns "red"
echo element('size', $array, 'foobar'); // returns "foobar"
element($item, $array[, $default = NULL])
پارامترها
  • $items نوع آرایه - کلید آیتم‌های مورد نظر برای استخراج از آرایه
  • $array نوع آرایه - آرایه ورودی
  • $default نوع بولین - مقدار بازگشتی در صورت معتبر نبودن آرایه
مقدار بازگشتی در صورتی عدم موفقیت NULL و در صورت موفقیت آیتم مورد نظر از آرایه
نوع مقدار بازگشتی mixed (بیش از یک نوع ممکن است.)

امکان استخراج چندین آیتم از یک آرایه را فراهم می‌کند. این فانکشن بررسی می‌کند که آیا هر کدام از اندیس‌های مورد نظر سِت شده و اگر سِت شده، آیا مقدار دارد یا نه. اگر مقدار داشته باشد، مقدار آن را برمی‌گرداند، اگر مقدار نداشته باشد NULL برمی‌گرداند، مگر اینکه مقدار پیش‌فرضی را به عنوان پارامتر سوم به این فانکشن داده باشید تا اگر آیتم مورد نظر دارای مقدار نبود، آن مقدار پیش‌فرض را برگرداند.

مثال

$array = array(
        'color' => 'red',
        'shape' => 'round',
        'radius' => '10',
        'diameter' => '20'
);

$my_shape = elements(array('color', 'shape', 'height'), $array);

در مثال بالا، مقدار زیر در آرایه $my_shape قرار می‌گیرد:

array(
        'color' => 'red',
        'shape' => 'round',
        'height' => NULL
);

برای پارامتر سوم هر مقدار پیش‌فرضی را مایل باشید می‌توانید قرار دهید.

$my_shape = elements(array('color', 'shape', 'height'), $array, 'foobar');

در مثال بالا، مقدار زیر در آرایه $my_shape قرار می‌گیرد:

array(
        'color'         => 'red',
        'shape'         => 'round',
        'height'        => 'foobar'
);

هنگامی که آرایه $_POST را به مدل خود پاس می‌دهید، این فانکشن بسیار کاربردی است. این کار جلوی ارسال داده‌های POST اضافی توسط کاربر را می‌گیرد و اجازه نمی‌دهد که داده‌های اضافی از این طریق به تیبل‌های شما وارد شوند.

$this->load->model('post_model');
$this->post_model->update(
        elements(array('id', 'title', 'content'), $_POST)
);

این کد تضمین می‌کند تا فقط فیلدهای id و title و content برای آپدیت ارسال شوند.

random_element($array)
پارامترها
  • $array نوع آرایه - آرایه ورودی
مقدار بازگشتی یک آیتم تصادفی از آرایه
نوع مقدار بازگشتی mixed (بیش از یک نوع ممکن است.)

یک آرایه را به عنوان ورودی می‌گیرد و یک آیتم تصادفی از آن را برمی‌گرداند.

$quotes = array(
        "I find that the harder I work, the more luck I seem to have. - Thomas Jefferson",
        "Don't stay in bed, unless you can make money in bed. - George Burns",
        "We didn't lose the game; we just ran out of time. - Vince Lombardi",
        "If everything seems under control, you're not going fast enough. - Mario Andretti",
        "Reality is merely an illusion, albeit a very persistent one. - Albert Einstein",
        "Chance favors the prepared mind - Louis Pasteur"
);

echo random_element($quotes);
منبع
Array Helper