simple-php-router icon indicating copy to clipboard operation
simple-php-router copied to clipboard

How can I manipulate input values?

Open benfiratkaya opened this issue 2 years ago • 1 comments

I have code like that:

function input($index = null, $defaultValue = null, ...$methods)
	{
		if ($index !== null) {
			return request()->getInputHandler()->value($index, $defaultValue, ...$methods);
		}
		
		return request()->getInputHandler();
	}
if (input("stockStatus") == 0) {
    $_POST["stock"] = -1;
}
echo input("stock");

I want to make "stock" value "-1" when "stockStatus" is 0. But the "stock" value does not change.

How can I set post value?

benfiratkaya avatar Aug 14 '23 07:08 benfiratkaya

You are not supposed to change super global variables, they contain values parsed and specific to the the request so that is not supported. If you need to manipulate the values and use them later on in your code, you should move them to your own custom variables. The request helper class supports custom variables and is available on everywhere, so you could always take advantage of that:

request()->stock = input('stockStatus', 0);

request()->stock // equals 0

skipperbent avatar Aug 14 '23 10:08 skipperbent