Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

PHP ArgumentCountError

Giới thiệu

Parser PHP ném ArgumentCountError khi đối số truyền cho hàm/user method ít hơn định nghĩa. Lớp ArgumentCountError kế thừa từ TypeError.

Ví dụ ArgumentCountError

Hàm add() định nghĩa nhận 2 đối số. Nếu gọi với ít hơn, ArgumentCountError ném ra, bắt bằng catch.

Ví dụ

<?php function add($x, $y) { return $x + $y; } try { echo add(10); } catch (ArgumentCountError $e) { echo $e->getMessage(); } ?>

Kết quả

Too few arguments to function add(), 1 passed in C:\xampp\php\test.php on line 6 and exactly 2 expected

Ví dụ method setdata() trong myclass định nghĩa 2 tham số. Gọi với ít tham số ném ArgumentCountException:

Ví dụ

<?php class myclass { private $name; private $age; function setdata($name, $age) { $this->name = $name; $this->age = $age; } } try { $obj = new myclass(); $obj->setdata(); } catch (ArgumentCountError $e) { echo $e->getMessage(); } ?>

Kết quả

Too few arguments to function myclass::setdata(), 0 passed in C:\xampp\php\test.php on line 15 and exactly 2 expected

ArgumentCountException cũng ném khi hàm tích hợp nhận số đối số không hợp lệ. Tuy nhiên chế độ strict-types phải bật.

Ví dụ

<?php declare(strict_types = 1); try { echo strlen("Hello", "World"); } catch (ArgumentCountError $e) { echo $e->getMessage(); } ?>

Kết quả

strlen() expects exactly 1 parameter, 2 given