Bộ câu hỏi phỏng vấn PHP trung cấp cho lập trình viên năm 2023
Mục lục
Câu hỏi phỏng vấn PHP trung cấp
Câu hỏi: Làm thế nào để tải tệp lên bằng PHP?
Câu hỏi phỏng vấn PHP trung cấp thương gặp là làm thế nào để tải tệp lên bằng PHP. Có một số bước như sau:
Thứ nhất, PHP nên cho phép tải lên tệp; điều này có thể được thực hiện bằng cách tạo chỉ thị file_uploads = On
Sau đó, bạn có thể thêm phương thức hành động là ‘post’ với kiểu mã hóa là ‘nhiều phần / biểu mẫu-dữ liệu.’
<formaction = “myupload.php” method = “post” enctype = “Multiart / form-data” >
Tệp myupload.php chứa mã cụ thể cho loại quy tắc được tải lên, ví dụ: hình ảnh, tài liệu, v.v. và các chi tiết như đường dẫn mục tiêu, kích thước và các tham số khác.
Sau đó, bạn có thể viết mã HTML để tải lên tệp bạn muốn bằng cách chỉ định loại đầu vào là ‘file’.
Câu hỏi: Làm cách nào để tạo kết nối và truy vấn cơ sở dữ liệu trong PHP?
Để tạo kết nối cơ sở dữ liệu:
$connection = new mysqli($servername, $username, $password);
where $servername, $username, $password should be defined beforehand by the developer.
To check if the connection was successful:
if ($conn->connect_error) {
die("Connection error: " . $conn->connect_error);
}
Create database query:
$sql = "CREATE DATABASE PRODUCT";
if ($conn->query($sql) === TRUE) {
echo "Database successfully created";
} else {
echo "Error while creating database: " . $conn->error;
}
Câu hỏi: Giải thích Cookies? Làm thế nào để tạo cookie trong PHP?
Cookie lưu trữ dữ liệu về người dùng trên trình duyệt. Nó được sử dụng để xác định người dùng và được nhúng vào máy tính của người dùng khi họ yêu cầu một trang cụ thể. Chúng tôi có thể tạo cookie trong PHP bằng cách sử dụng hàm setcookie ():
setcookie(name, value, expire, path, domain, secure, httponly);
ở đây tên là bắt buộc và tất cả các tham số khác là tùy chọn.
Thí dụ,
setcookie (“tools_selected”, “guitar”)
Câu hỏi: Giải thích tầm quan trọng của Trình phân tích cú pháp trong PHP?
Trình phân tích cú pháp PHP là một phần mềm chuyển đổi mã nguồn mà máy tính có thể hiểu được. Điều này có nghĩa là bất kỳ bộ hướng dẫn nào chúng tôi đưa ra dưới dạng mã đều được trình phân tích chuyển đổi thành định dạng máy có thể đọc được. Bạn có thể phân tích cú pháp mã PHP với PHP bằng cách sử dụng hàm token_get_all.
Câu hỏi: Giải thích hàm constant() và mục đích của nó?
constant() dùng để lấy giá trị của một hằng. Nó chấp nhận tên của hằng số làm đầu vào:
constant(string $name)
Hàm trả về một giá trị không đổi, nếu có, hàm khác trả về null.
>>> Đọc thêm: Bộ câu hỏi phỏng vấn PHP cho lập trình viên năm 2021
Câu hỏi: Định nghĩa việc sử dụng các tệp .htaccess và php.ini trong PHP?
Cả hai đều được sử dụng để thực hiện các thay đổi đối với cài đặt PHP.
-
.htaccess – Một tệp đặc biệt có thể được sử dụng để thay đổi hoặc quản lý hoạt động của một trang web. Hướng tất cả người dùng đến một trang và chuyển hướng trang của miền thành https hoặc www là hai trong số những cách sử dụng quan trọng nhất của tệp. Để .htaccess hoạt động, PHP cần được cài đặt dưới dạng mô-đun Apache.
-
php.ini – Tệp đặc biệt này cho phép thay đổi cài đặt PHP mặc định. Có thể chỉnh sửa tệp php.ini mặc định hoặc tệp mới có thể được tạo với các bổ sung có liên quan và sau đó được lưu dưới dạng tệp php.ini. Để php.ini hoạt động, PHP cần chạy dưới dạng CGI.
Câu hỏi: Vẽ một so sánh giữa ngoại lệ thời gian biên dịch và ngoại lệ thời gian chạy. Chúng được gọi là gì?
Ngoại lệ được kiểm tra là ngoại lệ xảy ra tại thời điểm biên dịch. Vì không thể bỏ qua loại ngoại lệ này, nó cần được xử lý một cách thận trọng. Mặt khác, một ngoại lệ không được kiểm tra là ngoại lệ xảy ra trong thời gian chạy. Nếu một ngoại lệ đã kiểm tra không được xử lý, nó sẽ trở thành một ngoại lệ không được kiểm tra.
Câu hỏi phỏng vấn PHP trung cấp: Giải thích Path Traversal?
Path Traversal là một hình thức tấn công để đọc vào các tệp của một ứng dụng web. ‘../’ được gọi là chuỗi dấu chấm. Nó là một biểu tượng đa nền tảng để đi lên trong danh bạ. Để vận hành tệp ứng dụng web, Path Traversal sử dụng các chuỗi dấu chấm-chấm-gạch chéo.
Kẻ tấn công có thể tiết lộ nội dung của tệp bị tấn công bằng Path Traversal bên ngoài thư mục gốc của máy chủ web hoặc ứng dụng. Nó thường được thực hiện để lấy mã thông báo truy cập, mật khẩu bí mật và thông tin nhạy cảm khác được lưu trữ trong tệp.
Path Traversal còn được gọi là Truyền tải thư mục. Nó cho phép kẻ tấn công khai thác các lỗ hổng có trong tệp web bị tấn công.
Câu hỏi phỏng vấn PHP trung cấp: Giải thích sự khác biệt giữa request GET và POST
Bất kỳ nhà phát triển PHP nào cũng cần có hiểu biết về giao thức HTTP. Sự khác biệt giữa GET và POST là một phần không thể thiếu trong quá trình học giao thức HTTP. Dưới đây là sự khác biệt chính giữa hai yêu cầu:
GET cho phép hiển thị dữ liệu đã gửi như một phần của URL. Đây không phải là trường hợp khi sử dụng POST vì trong thời gian này, dữ liệu được mã hóa trong yêu cầu.
-
Số ký tự tối đa được xử lý bởi GET được giới hạn ở 2048. Không có giới hạn nào như vậy được áp dụng cho POST.
-
GET chỉ cung cấp hỗ trợ cho dữ liệu ASCII. Mặt khác, POST cho phép ASCII, dữ liệu nhị phân, cũng như các dạng dữ liệu khác.
-
Thông thường, GET được sử dụng để truy xuất dữ liệu trong khi POST được sử dụng để chèn và cập nhật dữ liệu.
>>> Tham khảo: Khóa học lập trình PHP
Câu hỏi phỏng vấn PHP trung cấp: Giải thích chức năng mail và cú pháp của nó
Để gửi trực tiếp email từ tập lệnh hoặc trang web, hàm mail () được sử dụng trong PHP. Nó có tổng cộng 5 đối số. Cú pháp chung của một hàm mail là:
mail (to, subject, message, headers, parameters);
-
to: biểu thị người nhận mail
-
subject: biểu thị chủ đề của mail
-
mail: nội dung mà bạn muốn truyền tải. Mỗi dòng phân tách bằng/n và giới hạn ký tự tối đa là 70
-
tiêu đề biểu thị thông tin bổ sung về thư, chẳng hạn như CC và BCC (Tùy chọn)
-
tham số biểu thị một số tham số bổ sung được bao gồm trong chương trình gửi thư (Tùy chọn)
Kết luận: Trên đây là bộ câu hỏi phỏng vấn PHP trung cấp. Hy vọng các bạn thấy các thông tin trên hữu ích và có thể hỗ trợ bạn trong vòng phỏng vấn sắp tới. Nếu chưa sẵn sàng, đừng ngại ngần tham khảo các khóa học lập trình tại Viện công nghệ thông tin T3H để trau dồi thêm kiến thức bạn nhé!