Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php中的concatation_Php - Fatal编程技术网

php中的concatation

php中的concatation,php,Php,我有下一种情况,假设我有一个有10个属性的对象,名为r1,r2,r3…r10。现在我想动态提取每个属性的值。为此,我做出了这样的决定,我知道这会奏效的 $sum = 0; for($i = 1; $i <= 10; $i ++){ $key = "r{$i}"; $sum += $this->$key; } $sum=0; 对于($i=1;$i$key; } 这是一个有代表性的例子,我想知道的是,如果不这样做,我可以做 for($i = 1; $i <= 10; $i +

我有下一种情况,假设我有一个有10个属性的对象,名为r1,r2,r3…r10。现在我想动态提取每个属性的值。为此,我做出了这样的决定,我知道这会奏效的

$sum = 0;

for($i = 1; $i <= 10; $i ++){
$key = "r{$i}";
$sum += $this->$key;
}
$sum=0;
对于($i=1;$i$key;
}
这是一个有代表性的例子,我想知道的是,如果不这样做,我可以做

for($i = 1; $i <= 10; $i ++){

$sum += $this->r{$i};
}
for($i=1;$i r{$i};
}

把多余的一行删掉……我尝试过几种形式的连接,但我搞不懂。有人能告诉我这是否可能,以及如何实现吗。

那是因为在连接时不使用
+=
,而是使用
=

阅读以下内容:

您可以这样做:

$sum += $this->{'r'.$i};

对我来说,有多个这样命名的属性听起来是个问题。为什么不使用数组呢?

若你们要做一个值的总和,而不是仅仅创建一个字符串,你们可以使用+=。@Dave是的,但这个问题与串接(字符串的互连)有关。不,我特别要问$this->r{$i},如何获得这样的属性值…这种方法不会work@emc然后你应该编辑你的问题,让你问的更清楚r来自哪里?它们是对象的属性…r1,r2,r3…r10…我这样称呼它们只是为了举例,但它可以是token1,token2,token3,不管你喜欢它,重点是t请在提问之前做一些研究:因为表格是一个表格,它们代表了表格的每一个输入,非常感谢我已经试过了,并且已经成功了worked@emc好的,但是您知道可以在输入名称中使用数组吗?
r[3]
(在您的情况下)。无论如何,如果这有帮助,你能接受我的回答吗?