Bagaimana untuk menukar tatasusunan menjadi parameter fungsi bebas?
P粉391677921
P粉391677921 2023-07-22 23:17:01
0
2
454

Saya mahu menggunakan nilai dalam tatasusunan sebagai parameter bebas dalam panggilan fungsi. Contoh:

// Values "a" and "b" $arr = array("alpha", "beta"); // ... are to be inserted as $a and $b. my_func($a, $b) function my_func($a,$b=NULL) { echo "{$a} - {$b}"; }

Bilangan nilai dalam tatasusunan tidak diketahui.

Penyelesaian yang mungkin adalah:

  1. Saya boleh menghantar tatasusunan sebagai parameter tunggal, tetapi lebih suka menghantarnya sebagai berbilang parameter fungsi bebas.

  2. 将数组使用implode()函数连接成逗号分隔的字符串。(失败,因为它只是一个字符串。)

  3. Gunakan satu parameter:

    $str = "'a','b'"; function goat($str); // $str needs to be parsed as two independent values/variables.
  4. Gunakaneval()?

  5. Tatasusunan lintasan?

Cadangan dialu-alukan. terima kasih.

P粉391677921
P粉391677921

membalas semua (2)
P粉071602406

Jika saya memahami anda dengan betul:

$arr = array("alpha", "beta"); call_user_func_array('my_func', $arr);
    P粉063039990

    Soalan ini agak lama, tetapi terdapat lebih banyak sokongan langsung dalam PHP 5.6+.

    http://php.net/manual/en/functions.arguments.php#functions.variable-arg-list.new

    $arr = array("alpha", "beta"); my_func(...$arr);
      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!