2013-06-17 44 views
5

Tham khảo: Cách bạn đặt tên biến trong Laravel & PHP.Biến tên trong Laravel

$ firstName hoặc $ first_name?

$ userid hoặc $ userId hoặc $ user_id?

+1

Câu hỏi thường gặp và được tranh luận. Ý kiến ​​của tôi là bất cứ điều gì bạn làm, tiếp tục làm. Không có mã nào xấu hơn mã không tuân theo các quy tắc riêng của nó. Tôi thích sử dụng dấu gạch dưới cho các biến ít quan trọng hơn để 'first_name' và' user_id'..cho các mô hình dữ liệu như tôi sử dụng các thủ đô, do đó, 'Tài khoản' hoặc' Người dùng'. Nhưng đôi khi tôi làm trường hợp lạc đà cho các mô hình dữ liệu ít quan trọng hơn, như 'previousUser'. Tất cả trong tất cả, thói quen và quy ước của nó. Không có cách nào đúng hay sai cho các biến. – Sam

+0

Cảm ơn @SamSullivan –

Trả lời

8

PSR-1 Coding Standards có điều này để nói:

Dù quy ước đặt tên được sử dụng nên được áp dụng một cách nhất quán trong một phạm vi hợp lý. Phạm vi đó có thể là cấp nhà cung cấp, cấp gói, cấp lớp hoặc cấp phương pháp.

Cá nhân tôi sử dụng mixedCase cho thuộc tính và gạch dưới được phân tách cho các biến được xác định trong hàm, phương pháp hoặc trong phạm vi toàn cầu.

Điều quan trọng là sử dụng nó một cách nhất quán để bạn có thể dễ dàng biết liệu biến có bị lạm dụng không (tức là tôi biết nếu tôi thấy biến lạc đà có biến không có toán tử đối tượng, tôi biết đó là lỗi).

Larvel 4's coding guidelines tuyên bố rằng họ tuân thủ PSR-1 mà không đề cập đến việc biểu diễn các biến.

+0

tại sao điều này lại bị bỏ phiếu? Đó là khá nhiều những gì tôi đã nói trong một bình luận .. nhưng báo giá PSR, vì vậy là xứng đáng với một câu trả lời. IMO – Sam

+0

Có thể bị bỏ phiếu vì họ không thích sở thích của tôi, nhưng tôi chỉ tuyên bố nó để minh họa tầm quan trọng của tính nhất quán. – Orangepill

+0

Điều đó không trở thành một vấn đề khi bạn đang truy cập các thuộc tính của một đối tượng hùng hồn? Vì các cột trong bảng là snake_case? – blackpla9ue

4
Laravel 3: $first_name 
Laravel 4: $firstName 

Tại sao? Vì bạn tuân theo quy ước khung làm cho mã của bạn dễ đọc hơn cho các nhà phát triển khác tham gia dự án sau này.

Đó không phải là sở thích cá nhân của tôi. Đó là những gì đám đông hy vọng làm. :)

+0

Đó có phải là các biến hoặc thuộc tính hoặc cả hai? – Orangepill

+0

Của nó cho cả hai. Trong Laravel của nó cũng cho các phương pháp. Ví dụ: ... $ this-> has_one() - L3 ... $ this-> hasOne() - L4 – StvN

+3

Họ đã chính thức thông qua một tài khoản khác, sau đó họ nên đăng với hướng dẫn mã hóa của họ. – Orangepill