Câu hỏi

Giải thích sự khác biệt giữa shell_exec()exec() trong PHP là gì?

Câu trả lời

Trong PHP, shell_exec()exec() là hai hàm được sử dụng để thực thi các lệnh hệ thống, nhưng chúng có một số khác biệt về cách thức hoạt động và kết quả trả về:

shell_exec()

  • Trả về toàn bộ output từ lệnh được thực thi dưới dạng một chuỗi
  • Không cung cấp thông tin về trạng thái kết thúc của lệnh (exit status).
  • Nếu lệnh thất bại hoặc không có output, shell_exec() sẽ trả về NULL.
  • Không có khả năng lấy thông tin chi tiết về từng dòng output hoặc trạng thái kết thúc của lệnh.

Ví dụ sử dụng shell_exec():

$output = shell_exec('ls');
echo "<pre>$output</pre>";

exec()

  • Trả về dòng cuối cùng của output từ lệnh được thực thi
  • Có thể cung cấp thông tin chi tiết về từng dòng output thông qua một tham số thứ hai, là một mảng sẽ chứa mỗi dòng của output.
  • Có thể cung cấp trạng thái kết thúc của lệnh thông q...
Bạn cần đăng nhập để xem
middle

middle

Gợi ý câu hỏi phỏng vấn

junior

Sự khác biệt giữa ===== trong PHP là gì?

middle

$$ trong PHP có nghĩa là gì?

senior

Các liên kết tĩnh trễ (LSB) trong PHP là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào