Самое большое преимущество ООП против процедурного программирования в PHP, насколько я понимаю, это разделение имен функций (своего рода пространство имен).
Итак, теперь, когда у нас есть пространство имен с версии 5.3, что вы думаете - Для большинства случаев (малых и средних веб-сайтов), когда нам нужен быстрый и снова структурированный код, использование пространства имен + процедурное программирование получает значительное преимущество над определением и написанием в ООП.
Преимущества:
Пример кода:
namespace User;
function setPassword ($user_id) {
$pass = _generatePassword();
$sql = 'UPDATE `users` SET `password` = '.escape($pass).' WHERE `user_id` = '.escape($user_id);
$result = mysql_query($sql);
if (mysql_affected_rows() == 1) return $sql;
else return $sql;
}
function _generatePassword () {
$char = '0123456789abcdefghijklmnopqrstuvwxyz';
$str = '';
for ($i = 1; $i <= 6; $i++) {
$str .= $char[mt_rand(0, strlen($char))];
}
return $str;
}
Использование:
$user_id = 5;
User\setPassword($user_id);
Я спрашиваю мнение. Я понимаю, что это просто стиль разработчиков, но может я что-то упускаю.
PS. Для большинства случаев (малые и средние сайты) - я имею в виду, когда вы делаете сайты для клиентов, которые в основном разрабатываются 1 раз, и немного улучшений функций в долгосрочной перспективе.