Ошибка PHP. Почему внутри array_map указана «переменная undefined»?

Я использую функцию array_map в своем приложении php. Я определил функцию array_map вот так.

$ratingID =  $this->db->insert_id();

    $rated_item_array = array_map(function ($a) {
        return $a + array('RatingID' => $ratingID);
    }, $rated_item_array);  

Появляется уведомление Php

A PHP Error was encountered

Severity: Notice

Message: Undefined variable: ratingID

Когда я печатаю $ ratingID . Я правильно распечатал значение, поэтому определен $ ratingID. Почему он не определен в функции array_map ? Мой $ Rated_item_array равен

Array
(
    [0] => Array
        (
            [RatingFactorPreferenceID] => 1,
            [PreferenceID] => 45,
            [RatedValue] => 1,
            [CreatedOn] => 1326790338,
            [CreatedBy] => 25
        )

    [1] => Array
        (
            [RatingFactorPreferenceID] => 2,
            [PreferenceID] => 45,
            [RatedValue] => 1,
            [CreatedOn] => 1326790338,
            [CreatedBy] => 25
        )

    [2] => Array
        (
            [RatingFactorPreferenceID] => 3,
            [PreferenceID] => 45,
            [RatedValue] => 1,
            [CreatedOn] => 1326790338,
            [CreatedBy] => 25
        )
)
37
задан craned 3 June 2015 в 17:24
поделиться