在 foreach 中更改变量名

如何根据用户 $rank$rank1 变量名称更改为 $rank2$userID 等?

foreach($myClient as $users){
   $username = $users->usrnm;
   $userID = $users->usrID;
   $rank...
   
}
tian9085 回答:在 foreach 中更改变量名

你可以这样做:

$userId1 = 1;
$userId2 = 2;

$rankVarName1 = sprintf('rank%s',$userId1);
$rankVarName2 = sprintf('rank%s',$userId2);

$$rankVarName1 = 'rank var value';
$$rankVarName2 = 'other rank';

var_dump($rank1); // rank var value
var_dump($rank2); // other rank

但我建议您使用数组

$ranks = [];

$userId1 = 1;
$userId2 = 2;

$ranks[$userId1] = 'rank var value';
$ranks[$userId2] = 'other rank';

var_dump($ranks[$userId1]); // rank var value
var_dump($ranks[$userId2]); // other rank
,

你可以这样做:

foreach($myClient as $users){
   $username = $users->usrnm;
   $userID = $users->usrID;
   ${'rank'.$userID} = 'something';
   
}
本文链接:https://www.f2er.com/963.html

大家都在问