# Naming Conventions — PHP / Laravel

- **Classes:** PascalCase → `UserService`, `OrderController`
- **Methods:** camelCase → `findById()`, `createOrder()`
- **Variables:** camelCase → `$userId`, `$orderList`
- **Constants:** UPPER_SNAKE_CASE → `MAX_RETRY_COUNT`
- **Database tables:** snake_case, plural → `users`, `order_items`
- **Database columns:** snake_case → `created_at`, `user_id`
- **Routes:** kebab-case → `/user-profiles`, `/order-history`
- **Controllers:** singular + Controller → `UserController`, `OrderController`
- **Models:** singular PascalCase → `User`, `OrderItem`
- **Migrations:** descriptive snake_case → `create_users_table`, `add_status_to_orders_table`
- **Form Requests:** `[Action][Resource]Request` → `CreateUserRequest`, `UpdateOrderRequest`
- **Events:** past tense → `UserCreated`, `OrderShipped`
- **Jobs:** imperative → `SendWelcomeEmail`, `ProcessPayment`
