Hướng dẫn dùng argv argc trong PHP
Tôi muốn chuyển các tham số từ Giao diện dòng lệnh PHP, sau đó đọc các giá trị bằng cách sử dụng tập lệnh PHP, giống như sau:
Tôi chuyển biến từ CLI như thế này:
Các công việc trên, tôi lấy Robby làm đầu ra. Nhưng tôi muốn làm một cái gì đó như thế này:
Vì vậy, người dùng được thông báo để nhập các thông số chính xác vào những nơi chính xác. Cách thích hợp để phân tích cú pháp các tham số này là gì?
33 hữu ích 0 bình luận 61k xem chia sẻ answer 42 Khi gọi một tập lệnh PHP từ dòng lệnh, bạn có thể sử dụng $ argc để biết có bao nhiêu tham số được truyền và $ argv để truy cập chúng. Ví dụ: chạy tập lệnh sau:
Như thế này:-
Sẽ cho kết quả sau
Xem $ argv và $ argc để biết thêm chi tiết. Để làm những gì bạn muốn, hãy nói
Bạn sẽ cần phải bùng nổ đối số về dấu bằng: -
Bằng cách đó, bạn có thể có bất cứ thứ gì bạn muốn ở phía trước dấu bằng mà không cần phải phân tích cú pháp, chỉ cần kiểm tra các cặp khóa => giá trị là đúng. Tuy nhiên, đó là một chút lãng phí, chỉ cần hướng dẫn người dùng về thứ tự chính xác để chuyển các đối số. 42 hữu ích 4 bình luận chia sẻ answer 17 Tôi sử dụng phương pháp khá ngắn gọn này:
Cái nào sẽ xử lý một cuộc gọi như:
Bằng cách gửi nó vào $ _GET, bạn sẽ tự động xử lý quyền truy cập web hoặc CLI. Đối với bình luận, điều này đang làm như sau:
17 hữu ích 0 bình luận chia sẻ answer 13 Mặc dù câu trả lời là đúng và bạn có thể thực hiện phân tích cú pháp bằng tay, nhưng
PHP cũng cung cấp Ngoài ra còn có các lựa chọn thay thế hướng đối tượng (được viết bằng PHP, có sẵn trong một số thư viện) có thể trở thành thứ bạn cần. Googling cho "php getopt" sẽ mang lại kết quả hữu ích. 13 hữu ích 1 bình luận chia sẻ answer 2 bạn có thể gửi các tham số dưới dạng một đối số sau đó phân tích cú pháp đối số đó như một mảng $ _GET
và trong tệp PHP của bạn
bạn sẽ nhận được các đối số trong mảng $ _GET như bình thường 2 hữu ích 0 bình luận chia sẻ answer 1 Các
Lệnh gọi để đặt $ inputFirstName với giá trị "Robby" sẽ là:
Giải trình Giá trị mặc định cho tất cả các tham số mong đợi được đặt trong 1 hữu ích 0 bình luận chia sẻ answer 0 Nếu bạn không phiền khi sử dụng thư viện, tôi khuyên bạn nên xem Thành phần Bảng điều khiển của Symfony . Nó có thể được sử dụng để tạo các ứng dụng dòng lệnh và hỗ trợ việc sử dụng Arguments & Options . Trang tài liệu chứa một vài ví dụ tuyệt vời để giúp bạn bắt đầu. Tất nhiên, nó sử dụng các kỹ thuật tương tự như giải thích của vascowhite. 0 hữu ích 0 bình luận chia sẻ answer 0 Tôi không biết liệu tại thời điểm câu hỏi này có được hỏi hay không, tôi sẽ trả lời nó có sẵn không nhưng nếu bạn gọi, 0 hữu ích 0 bình luận chia sẻ answer -1 Bạn có thể phân tích cú pháp đầu vào của người dùng trên chương trình của mình để tìm kiếm các chuỗi cụ thể như -1 hữu ích 0 bình luận chia sẻ Đăng nhập để trả lời câu hỏiCó thể bạn quan tâm |