Hướng dẫn argv php - argv php

(PHP 4, PHP 5, PHP 7, PHP 8)

$argv — Array of arguments passed to scriptArray of arguments passed to script

Description

Contains an array of all the arguments passed to the script when running from the command line. array of all the arguments passed to the script when running from the command line.

Note: The first argument $argv[0] is always the name that was used to run the script. : The first argument $argv[0] is always the name that was used to run the script.

Note: This variable is not available when register_argc_argv is disabled. : This variable is not available when register_argc_argv is disabled.

Examples

Example #1 $argv example

When executing the example with: php script.php arg1 arg2 arg3

The above example will output something similar to:

array(4) {
  [0]=>
  string(10) "script.php"
  [1]=>
  string(4) "arg1"
  [2]=>
  string(4) "arg2"
  [3]=>
  string(4) "arg3"
}

tufan dot oezduman at googlemail dot com ¶

11 years ago


5


6


7


8

hamboy75 at example dot com ¶

9 years ago


9

C:\xampp\php\php.exe name.php Robby
0


8

php at simoneast dot net ¶

6 years ago

C:\xampp\php\php.exe name.php Robby
2

Steve Schmitt ¶

13 years ago

C:\xampp\php\php.exe name.php Robby
3

Radon8472 ¶

11 months ago

C:\xampp\php\php.exe name.php Robby
4

C:\xampp\php\php.exe name.php Robby
5


8

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:\xampp\php\php.exe name.php Robby

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:

C:\xampp\php\php.exe name.php -inputFirstName="Robby"

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ì?

  • php
  • parameter-passing
  • command-line-interface

33 hữu ích 0 bình luận 61k xem chia sẻ 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:-

php script.php arg1 arg2 arg3

Sẽ cho kết quả sau

int(4)
array(4) {
  [0]=>
  string(21) "d:\Scripts\script.php"
  [1]=>
  string(4) "arg1"
  [2]=>
  string(4) "arg2"
  [3]=>
  string(4) "arg3"
}

Xem $ argv và $ argc để biết thêm chi tiết.

Để làm những gì bạn muốn, hãy nói

php script.php arg1=4

Bạn sẽ cần phải bùng nổ đối số về dấu bằng: -

list($key, $val) = explode('=', $argv[1]);
var_dump(array($key=>$val));

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ẻ 4 bình luận chia sẻ

answer

17

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:

if($argc>1)
  parse_str(implode('&',array_slice($argv, 1)), $_GET);

Như thế này:-


0

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ẻ

Tôi sử dụng phương pháp khá ngắn gọn này: 0 bình luận chia sẻ

answer

13

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 1 bình luận chia sẻ

answer

2

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:


1

Như thế này:-


2

Sẽ cho kết quả sau

Xem $ argv và $ argc để biết thêm chi tiết. 0 bình luận chia sẻ

answer

1

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:


3

Như thế này:-


4

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 0 bình luận chia sẻ

answer

0

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 0 bình luận chia sẻ

answer

0

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:

Để làm những gì bạn muốn, hãy nói 0 bình luận chia sẻ

answer

-1

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:

-1 hữu ích 0 bình luận chia sẻ 0 bình luận chia sẻ

Đăng nhập để trả lời câu hỏi

Có thể bạn quan tâm