Php 致命错误:使用字符串调用未定义的函数

Php 致命错误:使用字符串调用未定义的函数,php,Php,当我运行它时,网络浏览器会显示 '致命错误:调用未定义的函数 0123456789ABCDEFGHIjklmnopqrstuvxyzABCDEFGHIjklmnopqrstuvxyz()在 C:\Bitnami\wampstack\apache2\htdocs\loginmodule\lib\codegen.php on 第7行“和 “0123456789ABCDEFGHIjklmnopqrstuvxyzABCDEFGHIjklmnopqrstuvxyz”是 不是一个函数 如何修复它?问题在于:

当我运行它时,网络浏览器会显示

'致命错误:调用未定义的函数 0123456789ABCDEFGHIjklmnopqrstuvxyzABCDEFGHIjklmnopqrstuvxyz()在 C:\Bitnami\wampstack\apache2\htdocs\loginmodule\lib\codegen.php on 第7行“
和 “0123456789ABCDEFGHIjklmnopqrstuvxyzABCDEFGHIjklmnopqrstuvxyz”是 不是一个函数

如何修复它?

问题在于:

<?
  function generateRenStr($length) {
    $character = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    $rendom_str = "";
    $loopNum = $length;
    while ($loopNum--) {
      $rendom_str .= $character(mt_rand(0, strlen($character)));
    }
    return $rendom_str;
  }
?>
$character
是一个存储字符串的变量,您试图将其作为函数访问。使用了错误的括号(),您需要[]

试试这个:

while ($loopNum--) {
  $rendom_str .= $character(mt_rand(0, strlen($character)));
}

更改此
$rendom_str.=$character(mt_rand(0,strlen($character))
$rendom_str.=$character[mt_rand(0,strlen($character)-1)]试试这个
while ($loopNum--) {
  $rendom_str .= $character[mt_rand(0, strlen($character)-1)];
}