Tôi hiện đang làm việc với các lớp và đối tượng PHP. Trong câu hỏi này, tên của các trường và phương thức được tạo ra chỉ để bạn có được một ý tưởng về những gì tôi đang nói đến.Mẫu đăng ký hoặc Singleton trong PHP?
Nó liên quan đến việc sử dụng các mẫu thiết kế đơn và đăng ký.
Bây giờ cho phép nói rằng tôi cần truy cập đối tượng Cơ sở dữ liệu, đối tượng bộ nhớ cache, đối tượng cài đặt lõi, đối tượng phiên trong hầu hết các lớp khác tôi sẽ cần có quyền truy cập vào các mục này. Vì vậy, tôi sẽ sử dụng một đăng ký để lưu trữ tất cả 4 của những đối tượng vào 1 đối tượng lớp đăng ký. Tôi có thể easiyl chỉ cần vượt qua trong đối tượng 1 của tôi vào bất kỳ đối tượng nào khác cần truy cập chúng. Vì vậy, âm thanh tuyệt vời cho đến nay nhưng nếu tôi có một số lớp mà không cần tất cả 4 của những đối tượng, nếu tôi CHỈ cần truy cập vào đối tượng Cơ sở dữ liệu hoặc đối tượng Phiên trong một số lớp khác của tôi? Đối với perfromance nó sẽ là tốt nhất để chỉ cần sử dụng một singleton bên trong các đối tượng khác hoặc nó sẽ giống nhau để đi trước và sử dụng đăng ký của tôi trong những?
Tôi không biết đủ về cách các đối tượng hoạt động trong PHP để biết liệu có bất kỳ loại tăng hiệu năng nào không (sử dụng ít bộ nhớ, sử dụng CPU, thời gian tải). Vì vậy, bất cứ ai có kinh nghiệm trong điều này có thể cho tôi biết nếu có bất kỳ lợi ích nào bằng cách sử dụng cái này hay cái kia, tôi đang ở giai đoạn mà tôi có thể đi ầm ĩ mà không ảnh hưởng đến thời gian sản xuất hay bất cứ thứ gì. Tôi muốn sử dụng phương pháp tốt nhất nếu tôi có thể.
Tôi thực sự tìm thấy một câu hỏi chỉ bây giờ mà là cơ bản giống nhau http://stackoverflow.com/questions/1967363/registry-or-singleton – JasonDavis
Hãy lưu ý nếu bạn đang sử dụng PHP4 hoặc PHP5 ... đối tượng hoạt động rất khác và trong các từ khóa PHP4 như 'tĩnh' không được hỗ trợ. Có thể bạn đang sử dụng 5, nhưng nếu bạn muốn tham gia OOP liên quan, bạn cần chắc chắn. –