2012-04-02 3 views
0

Какой код будет быстрее (или лучше):CodeIgniter СЕЙЧАС() insert: какой самый быстрый способ?

$this->db->set('date', 'NOW()', FALSE); 

или

$data['date'] = date('Y-m-d H:i:s'); 
+0

Что вы здесь говорите, это [тег: микро-оптимизация]. Честно говоря, беспокоиться об этом совершенно бессмысленно, если вы не можете доказать с помощью теста, что ваша работа приложения страдает значимым образом с использованием одного подхода или другого (Подсказка: производительность вашего приложения не страдает каким-либо значимым образом, если вы используете либо подход) – GordonM

+3

Любая оптимизация, которую вы делаете, чтобы выжать еще одну 0.001s, теряется в архитектурной и служебной катастрофе, известной как «CodeIgniter». –

ответ

-1

В общем вызове функции очень дорого в PHP. Итак, что быстрее, функция даты или функция set? Это функция даты. Просто посмотрите, что делает функция set в строке 907 DB_active_rec.php, она делает все виды вещей, которые не кажутся необходимыми.

Так что лучше? Пойдите для более быстрого варианта, я предполагаю. Функция set() может быть переполнена здесь (хотя я всегда использую set(), по привычке/ленивости, я думаю).

+2

Функция вызова в PHP действительно не очень дорога. В любом случае, спрашивающий говорит о [теге: микро-оптимизации], о котором он не должен беспокоиться. – GordonM

+0

Перед публикацией вы, ребята, должны серьезно подумать об увеличении своих знаний и опыта на PHP. http://stackoverflow.com/questions/3691625/why-are-php-function-calls-so-expensive – qwertzman

+3

@qwertzman http://viper-7.com/xYVMjo. Это с 1 000 000 пробегов. Опять: Определите очень дорого ... Я не называю это ОЧЕНЬ дорогим, я называю это очевидными накладными расходами, которые не должны влиять на OP. – PeeHaa

2

В общем, все вызовы функций будут медленнее из-за накладных расходов. Однако я не буду говорить, что вызовы функций в PHP очень дорогой как qwertzman answered. Хорошо, это может быть медленнее по сравнению с другими языками, но это действительно не так. Посмотрите на this comparison с 1 000 000 вызовов функций. Вы видите, что получаете?

Говоря о том, какой фрагмент кода работает быстрее (в вашем OP), вы говорите о микро-оптимизации и действительно что-то такое you shouldn't have to worry about.

Настоящий вопрос заключается в том, какой фрагмент кода: лучше обслуживаемый, читаемый, понятный.

Смежные вопросы