如何在PHP中将多个数字连接为一个字符串


How to join multiple numbers together as a string in PHP?

我需要创建一个逗号分隔的数字字符串。

我遇到的问题是,最终,我得到了所有数字的总和,而它应该是:

2, 10, 35, 56, 67', etc.

我在做什么:

$field_ids = '';
// begin while loop
<?php $field_ids = bp_get_the_profile_field_ids(); ?>
// end while loop
// begin while loop
<?php $field_ids += bp_get_the_profile_field_ids(); ?>
// end while loop
<input type="hidden" name="field_ids" id="field_ids" value="<?php echo $field_ids; ?>">

我怎么能得到这个:

<input type="hidden" name="field_ids" id="field_ids" value="2, 10, 35, 56, 67">

而不是这个:

<input type="hidden" name="field_ids" id="field_ids" value="170">

是的,您可以将它们收集为一个数组,然后使用implode()来执行此操作:

$field_ids = array(); // initialize as array
while(...) { // begin while loop block
    $field_ids[] = bp_get_the_profile_field_ids(); // push it inside
} // end while loop block
$field_ids = implode(', ', $field_ids); // implode/glue those ids by comma
<input type="hidden" name="field_ids" id="field_ids" value="<?php echo $field_ids; ?>">

通过使用+=,您可以不断地将它们相加,直到循环结束,得到求和结果。

不要使用此运算符+=使用此:.=

因此,取而代之的是:

<?php $field_ids += bp_get_the_profile_field_ids(); ?>

写下:

<?php $field_ids .= bp_get_the_profile_field_ids(); . ", " ?>