2017-09-23 80 views
3

我试图做出某种氛围随机发生器,它在每次页面加载时挑选一个随机的氛围,但我也希望它避免从前一页中选取相同的一个。克隆一个变量的值

$amblst = array(1,2,3,4,5,6,7,8,9,10); 

if (($key = array_search($_SESSION['ambprev'], $amblst)) !== false) { 
    unset($array[$key]); 
} 

$ambnum = $ambnum + 1; 
$ambnum = array_rand($amblst); 

$_SESSION['ambprev'] = clone $ambnum; 

然而,使用克隆打破了某些原因页和我没有访问错误日志,所以我不能提供现在。

我只想克隆变量的值,仅此而已。

回答

3

clone关键字用于创建一个对象副本,而不是变量。

对象复制是通过使用克隆关键字(它调用 对象的__clone()方法,如果可能的话)

http://php.net/manual/en/language.oop5.cloning.php


你的情况,这是不够的分配创建$ambnum变量值的副本:

$_SESSION['ambprev'] = $ambnum;