10 Câu hỏi phỏng vấn Lập trình PHP Hướng đối tượng

Ngày đăng: 28/08/2019   -    Cập nhật: 14/04/2021
PHP (Hyper Text Pre-processor) là một ngôn ngữ kịch bản phía máy chủ được sử dụng để chủ yếu để phát triển web.


PHP cũng là ngôn ngữ dựa trên hướng đối tượng (OOP).



Nó đã được phát triển bởi Viết Lerdorf vào năm 1994, và được thiết kế chủ yếu dựa trên ngôn ngữ Lập trình C++.


Nó cũng là một ngôn ngữ có mục đích chung.


Các đoạn mã PHP có thể được nhúng trong khi lập trình website.


PHP là ngôn ngữ lập trình được gõ động (Dynamic), hỗ trợ các Hệ điều hành khác nhau như Windows, Unix, v.v..





Các tiêu chuẩn PHP, đặc tả kỹ thuật, và khai triển hiện nay được cung cấp bởi PHP Group.


  • Cụ thể, hãy đọc thêm bài viết PHP là gì?


Tại Việt Nam cũng như trên thế giới. PHP rất phổ biến trong Lập trình Web.


Và nếu bây giờ, bạn đang tìm kiếm một công việc liên quan đến ngôn ngữ PHP...


...thì...


Bạn cần chuẩn bị kỹ các câu hỏi phỏng vấn về PHP hướng đối tượng (PHP OOP).


Đúng vậy,


Tuy các cuộc phỏng vấn PHP đều khác nhau theo các mô tả, vị trí công việc khác nhau.


Nhưng chắc chắn!


Luôn có các câu hỏi về lập trình hướng đối tượng với PHP.



10 Câu hỏi Phỏng vấn Lập trình PHP Hướng đối tượng

10 Câu hỏi Phỏng vấn Lập trình PHP Hướng đối tượng

 

Tại đây, mình đã chuẩn bị 10 Câu hỏi phỏng vấn Lập trình PHP Hướng đối tượng thường được hỏi nhất để bạn luyện tập.


Mình nghĩ là sau khi bạn đã học PHP cơ bản kha khá thì trả lời các câu hỏi này cũng tương đối dễ mà thôi.


Đây cũng coi như là một bài bổ sung kiến thức về PHP OOP để bạn tự tin hơn khi đi phỏng vấn tìm việc.


Các câu hỏi phỏng vấn OOP sẽ được chia làm 2 phần:



  • Câu hỏi phỏng vấn Lập trình PHP hướng đối tượng Cơ bản
  • Câu hỏi phỏng vấn Lập trình PHP hướng đối tượng Nâng cao


Và không dài dòng thêm nữa, chúng ta hãy đi vào phần đầu tiên:


1. Câu hỏi phỏng vấn Lập trình PHP hướng đối tượng Cơ bản



Câu 1: Một session trong PHP là gì?



Trả lời:



Một Session trong PHP (hay còn gọi là phiên)


Nó được sử dụng để lưu trữ thông tin hoặc nhiều dữ liệu của trang web trên trình duyệt mà không được lưu trữ trên bộ nhớ máy tính cục bộ.


Một phiên trong PHP được bắt đầu bằng hàm session_start()


Và các biến phiên có thể được đặt bằng biến toàn cục có tên $_SESSION.


Trong quá trình tạo hoặc bắt đầu một phiên trong PHP, kịch bản lý tưởng sẽ là một mã định danh duy nhất sẽ được tạo trong khi bắt đầu phiên.


Sau đó cookie sẽ được gửi đến máy của người dùng để xác định phiên duy nhất.


id duy nhất này là được lưu trữ trong máy chủ từ xa được gọi để xác định người dùng trong vòng đời của phiên đó.


Khi phiên hết hạn, toàn bộ dữ liệu phiên của người dùng sẽ bị xóa.


Thời gian hết hạn phiên mặc định là 24 phút trong PHP.



Câu 2: Constructor và destructor trong PHP là gì?



Trả lời:


Đây là câu hỏi phỏng vấn PHP OOP rất hay được hỏi trong một cuộc phỏng vấn.


Constructor hay còn gọi là Hàm tạo trong PHP được sử dụng để tạo một đối tượng thuộc kiểu lớp của nó, được sử dụng để khởi tạo các thuộc tính của đối tượng bằng cách sử dụng một phương thức có tên là _construct().





Hàm tạo trong PHP có thể bị overload bằng cách gọi cùng tên phương thức nhưng truyền đối số khác nhau trong cùng một khai báo lớp.


Destructor hay còn gọi là Hàm hủy trong PHP được sử dụng để gọi khi vòng đời của đối tượng sẽ kết thúc để giải phóng bộ nhớ bị chiếm giữ hoặc để thu gom rác giống nhau.


Hàm hủy có thể được gọi bằng phương thức _destruct().



Câu 3. Các ứng dụng chung của PHP là gì?



Trả lời:


Các ứng dụng chung của PHP là:



  • PHP có thể thực hiện các hoạt động chức năng hệ thống như tạo, đọc, mở, đóng và ghi chúng vào và từ bộ nhớ máy tính. (Tham khảo hướng dẫn Thao tác với file trong PHP)

  • PHP có thể truy cập các biến cookie và thiết lập các giá trị trong trình duyệt. (Xem Hướng dẫn Cách tạo cookie trong PHP)

  • PHP cũng có thể cung cấp một hạn chế truy cập một số trang để đảm bảo tính bảo mật.

  • Dữ liệu cũng có thể được mã hóa bằng PHP.


Câu 4: Interface trong PHP là gì?



Trả lời:


Interface là một cách để cung cấp việc thực hiện các chức năng khác nhau theo yêu cầu của người dùng.


Interface cũng có thể được hiểu như là bản thiết kế của các cấu trúc cần thiết.


Một interface có thể được sử dụng và triển khai theo nhiều cách bên trong lớp triển khai.



Câu 5: Các loại dữ liệu khác nhau trong PHP là gì?



Trả lời:


Các kiểu dữ liệu khác nhau trong PHP là String, Float, Double, Integer, Boolean, Array, Object, NULL và Resource.




  • Số Integer là số nguyên (một số không có dấu thập phân).


  • Object (Đối tượng) là một loại có thể được khai báo rõ ràng để lưu trữ các loại dữ liệu khác nhau trong đó bằng cách đóng gói nó lại thành đối tượng.

  • Array (Mảng) là một danh sách giống hệt các loại dữ liệu được lưu trữ theo trình tự có thể được truy cập dựa trên một chỉ mục. (Học cách Sử dụng mảng trong PHP)

  • Giá trị NULL cũng là một loại dữ liệu cho biết không có giá trị và có một giá trị NULL duy nhất.


Ở trên đây là 5 Câu hỏi phỏng vấn PHP OOP cơ bản thường gặp nhất.


Cũng đơn giản thôi phải không nào?


Ok, vậy chúng ta sẽ tiếp tục.


Phần tiếp theo sẽ là:



2. Câu hỏi phỏng vấn Lập trình PHP hướng đối tượng Nâng cao


Câu 6: Hướng đối tượng (OOP) là gì và PHP là ngôn ngữ hướng đối tượng như thế nào?



Lập trình hướng đối tượng là gì?

Lập trình hướng đối tượng là gì?
 

Trả lời:


Ngôn ngữ lập trình hướng đối tượng (OOP) sẽ có các tính chất hướng đối tượng như sau:


  • Trừu tượng hóa (Abstraction)
  • Đóng gói (Encapsulation)
  • Kế thừa (Inheritance)
  • Đa hình (Polymorphism)
  • v.v....


PHP chủ yếu dựa trên ngôn ngữ lập trình C++, mà C ++ là ngôn ngữ lập trình hướng đối tượng.


Một lớp PHP chứa các thuộc tính và phương thức được sử dụng để tạo một đối tượng của lớp đó và mỗi đối tượng sẽ có các thuộc tính và giá trị riêng.



Note: Vì JAVA là một ngôn ngữ thể hiện đầy đủ tính chất của Lập trình hướng đối tượng, nên nếu bạn muốn tìm hiểu kỹ hơn thì có thể tham khảo:




Câu 7: Namespace trong PHP là gì?



Một namespace trong PHP được sử dụng để đóng gói các mục tương tự như trừu tượng hóa trong các khái niệm lập trình hướng đối tượng.


Namespace được sử dụng để thiết lập mối quan hệ giữa các lớp, hàm và hằng.


Một namespace có thể được xác định bằng cách sử dụng từ keyword namespace được dành riêng cho PHP để sử dụng nội bộ để tránh xung đột với các định danh do người dùng tạo ra.



Câu 8: Từ khóa final là gì? Chúng được sử dụng như thế nào trong PHP?



Trả lời:


Từ khóa final được giới thiệu trong phiên bản PHP 5.



Từ khóa final (có nghĩa là cuối cùng) trong PHP được sử dụng để đánh dấu một lớp hoặc một hàm là cuối cùng.


Nếu một lớp được đánh dấu là final, nó không thể được mở rộng (extends) để sử dụng các thuộc tính hoặc phương thức của nó.


Nó ngăn chặn các lớp con của nó ghi đè một phương thức.


Nếu chỉ có một hàm được đánh dấu là final, thì nó không thể được mở rộng.


Một khai báo final có thể được thực hiện bằng cách thêm tiền tố vào tên lớp hoặc tên hàm với từ khóa final.



Câu 9: Bạn hiểu như thế nào về echo và print trong PHP?



Trả lời:


Echo Print là hai cách cơ bản để nhận output trong PHP.


Chức năng của echo và print về cơ bản là giống hệt nhau, ngoại trừ:



  • echo không không trả về bất kỳ giá trị nào trong khi print trả về giá trị 1 có thể được sử dụng trong các biểu thức khác.
  • echo có thể có nhiều đối số trong khi print chỉ có thể chấp nhận 1 đối số tại cùng một thời điểm.


10. Require và Include trong PHP là gì?



Trả lời:


Đây là Câu hỏi phỏng vấn Lập trình PHP Hướng đối tượng nâng cao được hỏi trong một cuộc phỏng vấn.


Các câu lệnh require include trong PHP có sẵn từ các phiên bản PHP 4 trở lên gần như giống hệt nhau.


Chỉ một số khác biệt:



  • Câu lệnh include sẽ bao gồm các tệp đã chỉ định và đánh giá nó.
  • Trong khi require cũng có tính năng tương tự nhưng nó tạo ra lỗi nghiêm trọng khi lỗi với lỗi cấp độ E_COMPILE_ERROR là lỗi biên dịch.


Trong trường hợp này, nó dừng việc thực thi tập lệnh và tạm dừng dòng thời gian chạy chương trình.


Các tệp sẽ được include dựa trên đường dẫn tệp được đưa ra trong tập lệnh.



Lời kết



Trên đây là 10 câu hỏi phỏng vấn Lập trình hướng đối tượng với PHP thường gặp nhất.


Vẫn còn nhiều câu hỏi khác nữa và thậm chí cuộc phỏng vấn không chỉ dừng lại ở kiến thức PHP OOP mà còn các kiến thức khác theo như mô tả công việc của nhà tuyển dụng.


Hãy chuẩn bị kỹ nếu muốn nhận được offer lương cao.


Nếu bạn muốn tự tin hơn khi đi phỏng vấn, tìm việc làm Lập trình PHP thì:





Hoặc nếu bạn đã tự tin thì cũng nên lưu ý, nhà tuyển dụng sẽ dựa theo mô tả CV mà bạn viết để hỏi bạn.


Chính vì thế đây là một mẹo phỏng vấn:


Hãy chỉ viết những gì bạn thực sự hiểu vào trong CV. Khi phỏng vấn, hãy nói tập trung vào đó.


Bên cạnh đó nếu bạn có một dự án hoàn chỉnh từ đầu đến cuối do bạn làm thì thật tốt để show cho nhà tuyển dụng xem.


Lưu ý!

Không cần hoàn hảo!


Ít nhất là bạn cho nhà tuyển dụng thấy đã có cái nhìn về toàn bộ hệ thống.


Và chắc chắn phải qua vòng hồ sơ, nhà tuyển dụng chấp nhận thì bạn mới có cuộc phỏng vấn này chứ.


Và một lưu ý quan trọng trong khi phỏng vấn là:



Công nghệ thay đổi mỗi ngày, bạn không thể nào biết hết được tất cả mọi thứ.


Vì thế nếu bạn không biết. Hãy nói "Em không biết" hoặc "Phần này em không biết"


Nhưng QUAN TRỌNG!

Hãy thể hiện thái độ cho nhà tuyển dụng thấy bạn sẵn sàng tìm hiểu chúng.


Như thế sẽ tốt hơn là bạn cố gắng trả lời một câu hỏi gần đúng hoặc cứ nghĩ mình đúng.


Nên nói em không biết khi gặp phải câu hỏi bạn không biết trả lời


Nên nói em không biết khi gặp phải câu hỏi bạn không biết trả lời


Chúc bạn có một công việc thật phù hợp!


---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0383.180086
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
 
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #python #java #php

Bình luận Facebook
Mục lục
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!