为了账号安全,请及时绑定邮箱和手机立即绑定

如何在不重新定义字符串的情况下将字符串影响到变量

如何在不重新定义字符串的情况下将字符串影响到变量

PHP
千巷猫影 2023-04-15 16:35:14
我正在做一个项目,它有一堆变量用于我定义的某些链接。但是我只想在获得一些 GET 参数时在这些变量的末尾添加一个字符串。问题是我不想再有大量的变量,我想为变量使用相同的名称。经过一番研究,我找到了这个.=非常适合我的运算符。我还制作了一个for loop它适用于变量值,但我没有相同的名字。这是我得到的:$homeLink = $wURL.'government/'.$job.'/';$databaseLink = $wURL.'government/'.$job.'/search/database';$overviewLink = $wURL.'government/'.$job.'/overview';// Other variablesif (!isset($_SESSION['steamid']) && isset($_GET['uID']) && isset($_GET['uToken'])) {  // redefine the variables like this:  $homeLink .= '?uID='.$userinfoVlife['id'].'&uToken='.$userinfoVlife['websiteMDP'];  /*    OUTPUT: $wURL.'government/'.$job.'/'.'?uID='.$userinfoVlife['id'].'&uToken='.$userinfoVlife['websiteMDP']  */  // The for loop:    $arr = array($homeLink,$databaseLink,$overviewLink);    $nb = count($arr);    for ($i=0; $i < $nb ; $i++) {      $arr[$i] .= '?uID='.$userinfoVlife['id'].'&uToken='.$userinfoVlife['websiteMDP'];      echo $arr[$i]."<br>";     // have the same output that above but I have to call my variables with $arr[<a number>];    }}问题是我不想再有大量的变量,我想为变量使用相同的名称,关于如何进行的任何想法?
查看完整描述

1 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

首先,您的最后两个链接实际上都是基于第一个链接$homeLink:


$homeLink = $wURL.'government/'.$job.'/';

$databaseLink = $homeLink.'search/database';

$overviewLink = $homeLink.'overview';

那为什么不构建参数字符串然后附加它呢?


$homeLink = $wURL.'government/'.$job.'/'


$paramString = '';

if (!isset($_SESSION['steamid']) && isset($_GET['uID']) && isset($_GET['uToken'])) {

    $paramString = '?uID='.$userinfoVlife['id'].'&uToken='.$userinfoVlife['websiteMDP'];

}



$databaseLink = $homeLink.'search/database'.$paramString;

$overviewLink = $homeLink.'overview'.$paramString;

$homeLink .= $paramString;

我不明白为什么要将 URL 存储在一个数组中,这些是不同的 URL,因此要在不同的上下文中使用,将它们全部放在一个数组中当然是可能的,但不会带来任何价值,在我的观点。


总而言之,如果$userinfoVlife['websiteMDP']包含一个可读的密码,那么您的应用程序架构肯定有问题:处理原始密码是非常糟糕的做法,在 URL 中传递它更糟糕。


查看完整回答
反对 回复 2023-04-15
  • 1 回答
  • 0 关注
  • 55 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信