PHP добавить ключ со значением в массив быстрее - PullRequest
2 голосов
/ 23 февраля 2012

У меня есть массив:

    $data = array(
        'loggedin' => false
    );

Я хочу добавить другие ключи, а также их значения, если пользователь вошел в систему, поэтому я использую:

    if ( $this->auth_model->loggedin()){//user is logged in
        $data["loggedin"] = true;//set to true
        $data["user_id"] = $this->session->userdata["uid"];//add new key with its value on $data array
    }

это лучшееспособ сделать это или я должен использовать array_push и такие?

Ответы [ 4 ]

3 голосов
/ 23 февраля 2012

Нет необходимости добавлять накладные расходы, вызывая функцию (например, array_push).

Да. Это способ сделать это.

2 голосов
/ 23 февраля 2012

я не думаю, что вы можете использовать array_push для добавления значений в ассоциативный массив, так что все в порядке, как вы делаете

2 голосов
/ 23 февраля 2012

С помощью array_push вы не можете установить ключ.

Способ, который вы описали, является самым быстрым.

Вы можете создать второй массив с ключом user_id и затем объединить их.два массива, но это не хороший способ решить это дело.

Оставайтесь с тем, что у вас есть прямо сейчас.

1 голос
/ 23 февраля 2012

Способ, которым вы добавляете, лучше, чем использование array_push (причина: вы вставляете несколько значений, и это исключает накладные расходы при вызове функции), если вы добавляете больше значений в этот массив, тогда вы можете использовать array_push.

...