PHP删除<;br>;最后一行

PHP删除<;br>;最后一行,php,scripting,Php,Scripting,目前我有以下代码: <?php echo '<meta name="robots" content="noindex">'; $arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/ paper_items.json"),true); foreach($arr as $item) { $label = $item['label

目前我有以下代码:

<?php
echo '<meta name="robots" content="noindex">';
$arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/    paper_items.json"),true);
foreach($arr as $item) {

$label = $item['label'];
$cost = $item['cost'];
$id = $item['paper_item_id'];
$member = $item['is_member'];

if ($member == "1") {
$member = "Yes";
}else{
$member = "No";
}

echo  "$label = $id = $member = $cost";
echo ",<br>";
}  
?>
试试这个:

$result = array();

foreach($arr as $item) {
  ...

  $result[] =  "$label = $id = $member = $cost";
}

echo implode('<br />', $result);
$result=array();
foreach($arr作为$item){
...
$result[]=“$label=$id=$member=$cost”;
}
回波内爆(“
”,$result);
想法是在循环完成后,将所有行存储在数组中,并使用BR标记连接项目。

尝试以下操作:

$result = array();

foreach($arr as $item) {
  ...

  $result[] =  "$label = $id = $member = $cost";
}

echo implode('<br />', $result);
$result=array();
foreach($arr作为$item){
...
$result[]=“$label=$id=$member=$cost”;
}
回波内爆(“
”,$result);
想法是在循环完成后,将所有行存储在数组中,并使用BR标记连接项目。

尝试以下方法:

<?php
$str = '';
$str .= '<meta name="robots" content="noindex">';
$arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/    paper_items.json"),true);
foreach($arr as $item) {

$label = $item['label'];
$cost = $item['cost'];
$id = $item['paper_item_id'];
$member = $item['is_member'];

if ($member == "1") {
$member = "Yes";
}else{
$member = "No";
}

$str .= "$label = $id = $member = $cost";
$str .= ",<br>";
}  

echo substr($str, 0, -5);
?>
试试这个:

<?php
$str = '';
$str .= '<meta name="robots" content="noindex">';
$arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/    paper_items.json"),true);
foreach($arr as $item) {

$label = $item['label'];
$cost = $item['cost'];
$id = $item['paper_item_id'];
$member = $item['is_member'];

if ($member == "1") {
$member = "Yes";
}else{
$member = "No";
}

$str .= "$label = $id = $member = $cost";
$str .= ",<br>";
}  

echo substr($str, 0, -5);
?>

我建议您将所有项目存储在一个字符串中,而不是边走边回显。然后,在使用简单的正则表达式(如

echo preg_replace('/\<br\/\>$/','', $myTotalOutputString);
echo preg\u replace(“/\$/”,“$myTotalOutputString”);

我建议您将所有项目存储在一个字符串中,而不是边走边回显。然后,在使用简单的正则表达式(如

echo preg_replace('/\<br\/\>$/','', $myTotalOutputString);
echo preg\u replace(“/\$/”,“$myTotalOutputString”);

对代码进行一次小的重写:

<?php
echo '<meta name="robots" content="noindex">';
$arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/paper_items.json"), true);
$outArray = array();
foreach($arr as $item) {
    $label = $item['label'];
    $cost = $item['cost'];
    $id = $item['paper_item_id'];
    $member = ($item['is_member'] == '1') ? "Yes" : "No";
    $outArray[] = "{$label} = {$id} = {$member} = {$cost}";
}  

echo implode(',<br>', $outArray);
?>

对您的代码进行少量重写:

<?php
echo '<meta name="robots" content="noindex">';
$arr = json_decode(file_get_contents("http://media1.clubpenguin.com/play/en/web_service/game_configs/paper_items.json"), true);
$outArray = array();
foreach($arr as $item) {
    $label = $item['label'];
    $cost = $item['cost'];
    $id = $item['paper_item_id'];
    $member = ($item['is_member'] == '1') ? "Yes" : "No";
    $outArray[] = "{$label} = {$id} = {$member} = {$cost}";
}  

echo implode(',<br>', $outArray);
?>
我喜欢,但这里有:

foreach($arr作为$item){
$first=isset($first)和打印“,
”; // ... echo“$label=$id=$member=$cost”; }
这将在除第一次迭代之外的所有迭代中打印换行符-但在文本之前,只需确保在运行之前未设置
$first

我喜欢,但这里有:

foreach($arr作为$item){
$first=isset($first)和打印“,
”; // ... echo“$label=$id=$member=$cost”; }

这将在除第一次迭代外的所有迭代中打印换行符-但在文本之前,只需确保在运行之前未设置
$first

使用rtrim快速生成一行:

echo rtrim('test <br />', '<br />');
echo rtrim('test
,'
');

但我投票赞成上面的内爆答案。

使用rtrim的快速一衬板:

echo rtrim('test <br />', '<br />');
echo rtrim('test
,'
');

但是我投票赞成上面的内爆答案。

如果OP总是想加入
(这对于本例是正确的,但对于将来的其他示例不一定如此)。因此,对于这种特殊情况,这是最好的方法(而且非常优雅),但总的来说,我认为我的解决方案是更通用的方法,用于为输出组装字符串,然后删除一些不需要的尾随标记。这种方法的最大缺点是,如果您希望交替设置行的样式,例如,您必须执行各种summersaults以实现这一点。我从未声称这是所有情况下的最佳解决方案或通用解决方案,我只是针对这一特定情况作出了回应;)我觉得很好笑的是,当一切都说了又做了的时候,OP选择了一个几乎和我的答案一样正确的答案,即使我的答案投了-1的反对票,而你的答案投了8票赞成票。我想品味真的是无从谈起的!无论如何,你是对的,对于这个确切的问题,正如UpVots(我是其中一方)所显示的,这是处理这个问题最优雅、最简单的方法。如果OP总是想加入
(这对于本例是正确的,但对于将来的其他示例不一定如此),这是一个很好的解决方案。因此,对于这种特殊情况,这是最好的方法(而且非常优雅),但总的来说,我认为我的解决方案是更通用的方法,用于为输出组装字符串,然后删除一些不需要的尾随标记。这种方法的最大缺点是,如果您希望交替设置行的样式,例如,您必须执行各种summersaults以实现这一点。我从未声称这是所有情况下的最佳解决方案或通用解决方案,我只是针对这一特定情况作出了回应;)我觉得很好笑的是,当一切都说了又做了的时候,OP选择了一个几乎和我的答案一样正确的答案,即使我的答案投了-1的反对票,而你的答案投了8票赞成票。我想品味真的是无从谈起的!无论如何,你是对的,对于这个确切的问题,正如上面的投票(我是其中一方)所显示的,这是最优雅和最简单的处理方法。