首页 > 解决方案 > 在类和带有数组的函数中使用变量

问题描述

$n=800; 
function getName($n) { 
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; 
    $randomString = ''; 

    for ($i = 0; $i < $n; $i++) { 
        $index = rand(0, strlen($characters) - 1); 
        $randomString .= $characters[$index]; 
    } 

    return $randomString; 
} 

$secretcode = getName($n);

class Mess {
    protected static $options = array(
        'secret' => '$secretcode',
        'signing_method' => 'sha512',
        'verify' => true,
    );
}

这是我的 PHP 代码,如图所示,我希望将变量“secretcode”或此变量中的值放入类中的位置,该位置是带有数组的函数。在这个数组中,数组的秘密元素应该是变量值。我听说过全局变量,但我尝试了很多,每次它都会给我错误,具体是我改变了什么,但我不明白为什么事情不起作用。老实说,我还没有使用过分类的 php,所以我不知道它是否与 varibale 的用法不同然后正常。

标签: phparraysclassvariablesglobal-variables

解决方案


你可以在课堂上使用它

class Mess {
    protected static $options = array(
     'secret' => '',
     'signing_method' => 'sha512',
     'verify' => true,
    );
    function __construct($number){
      !empty(self::$options['secret']) ? self::$options['secret'] : this->getName($number);
    }
    function getName($n) { 
      $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; 
      $randomString = ''; 
      for ($i = 0; $i < $n; $i++) { 
        $index = rand(0, strlen($characters) - 1); 
        $randomString .= $characters[$index]; 
      } 
      return $randomString; 
    } 
}

推荐阅读