PHP 5.6 (xampp) is showing warnings instead of throwing ArgumentCountError

General Tech Bugs & Fixes 2 years ago

0 1 0 0 0 tuteeHUB earn credit +10 pts

5 Star Rating 1 Rating

Posted on 16 Aug 2022, this text provides information on Bugs & Fixes related to General Tech. Please note that while accuracy is prioritized, the data presented might not be entirely correct or up-to-date. This information is offered for general knowledge and informational purposes only, and should not be considered as a substitute for professional advice.

Take Quiz To Earn Credits!

Turn Your Knowledge into Earnings.

tuteehub_quiz

Answers (1)

Post Answer
profilepic.png
manpreet Tuteehub forum best answer Best Answer 2 years ago

 

I am running some php scripts from cli. I use xampp installation for php with path var /c/xampp/php. I tend to swap versions around by renaming installed xampp folders when I want to switch between com/tag/php5">php5 and 7 etc..

Recently deleted my com/tag/php5">php5.6 and had to reinstall it. Now for some reason I can run any funciton without passing in the required params and I only get a warning instead of an exception halting executuin.

eg.

    ction someFunction($required_param){
    if (!isset($required_param)) die('WTF! Param was not passed in yet im allowed to execute!');
}
someFunction();

//results with

$ php test/test.php
PHP Warning:  Missing argument 1 for someFunction(), called in C:\repo\com/tag/php5">php5\orm\test\test.php on line 5 and defined in C:\repo\com/tag/php5">php5\orm\test\test.php on line 2

Warning: Missing argument 1 for someFunction(), called in C:\repo\com/tag/php5">php5\orm\test\test.php on line 5 and defined in C:\repo\com/tag/php5">php5\orm\test\test.php on line 2
WTF! Param was not passed in!

This is really strange behaviour. I have never seen php allow a function to be called without the required params.

Any ideas how this could happen?

PS-also note that it outputs the error twice even if I disable log errors or display errors to only get a single error output. (the above example is without setting any error handling at run time just what you see is run)

No matter what stage you're at in your education or career, TuteeHub will help you reach the next level that you're aiming for. Simply,Choose a subject/topic and get started in self-paced practice sessions to improve your knowledge and scores.