【问题标题】:PHP Output is a string instead of the string from another variablePHP 输出是一个字符串,而不是来自另一个变量的字符串
【发布时间】:2026-01-18 13:20:02
【问题描述】:

我正在为自己制作一个脚本,用于检查我的矿工在矿池网站上的 mH/hash 数。因此,对于每个站点,我都有一堆带有 $user 和 $pass 的变量。示例:

   $user1 = 'A';
   $pass1 = 'B'

   $user2 = 'C';
   $pass2 = 'D';

所以我做了一个 PHP curl 来登录表单并检查当前的 mH/hash。 我还做了一个计数器,将变量 user1 和 pass1 提高 +1。

   $count = 0;
   $count = $count + 1;
   $user = "$user$count";   
   echo $user;

但问题是我在登录表单中的输出:

  $user2

应该是:

  C

我希望你清楚我在寻找什么,并提前致谢。

【问题讨论】:

标签: php string variables login output


【解决方案1】:

使用数组。从以下内容开始:

$users = array(
    array('A', 'B'),
    array('C', 'D')
);

foreach ($users as $user) {
    echo "Username: ".$user[0]. "\n";
    echo "Password: ".$user[1]. "\n";
}

【讨论】:

  • 感谢将我的代码更改为数组,听起来确实更好。
【解决方案2】:

Var 连接不是很“推荐”,但是...

$user = ${'user'.$count}

您应该考虑改用数组。

【讨论】:

  • 谢谢,这正是我想要的。
【解决方案3】:

使用数组:

$user = [];
$pass = [];

$user[1] = 'A';
$pass[1] = 'B'

$user[2] = 'C';
$pass[2] = 'D';

$count = 0;
$count = $count + 1;
echo $user[$count];

【讨论】:

    【解决方案4】:

    我认为在数组中指定用户和密码对会更好:

    $login_info = array();
    $login_info[] = array(
      'name' => 'A',
      'pass' => 'B',
    );
    $login_info[] = array(
      'name' => 'C',
      'pass' => 'D',
    );
    

    并且可以通过foreach遍历数组:

    foreach ($login_info as $info) {
      $name = $info['name'];
      $pass = $info['pass'];
      ...
    }
    

    您可以轻松地向数组中添加新元素,而无需创建新变量。

    【讨论】:

      最近更新 更多