开发者

Rand() function cause error when I replace static value with random value

开发者 https://www.devze.com 2023-03-10 03:00 出处:网络
What am I doing wrong I have this script, and added the $randnumber = rand(100, 500); function to it, this should generate a random number for me between 100 and 500.

What am I doing wrong

I have this script, and added the $randnumber = rand(100, 500); function to it, this should generate a random number for me between 100 and 500.

   $randnumber = rand(100, 500);
    function word_limiter( $text, $limit = $randnumber, $chars = '0123456789' )

The problem is that it gives me a error:

Parse error: syntax error, unexpected T_VARIABLE

While if I use the function as:

function word_limiter( $text, $limit = '200', $chars = '0123456789' )

it works 100%, I have tried it like this:

function word_limiter( $text, $limit = ''.$randnumber.'', $chars = '012345开发者_如何学Python6789' )

but still get an error?


That is a syntax error. You cannot assign the value of an expression as a default value. Default values can only be constants. Instead of doing that, you could be doing something like:

function word_limiter ($text, $limit = null, $chars = '0123456789') {
    if ($limit === null) {
        $limit = rand(100, 500);
    }
    // ...
}


What you are doing wrong is trying to use a variable as a default parameter value. You cannot do this.


You could do it like this:

function word_limiter( $text, $limit = null, $chars = '0123456789' ){
    if (is_null($limit)){
        $limit = rand(100, 500);
    }
}


You can not use a variable as the default to an argument - it must be a constant value.

You could try this...

function word_limiter($text, $limit = NULL) {
   if ($limit === NULL) {
      // Make its default value.
   }
}
0

精彩评论

暂无评论...
验证码 换一张
取 消