【问题标题】:Looping exploded results循环分解结果
【发布时间】:2020-03-03 23:02:10
【问题描述】:

我有一个字符串 $artikel['basisstaffel'],看起来像这样:

3-10:17;
11-20:14;
21-30:12;
31-4:10;
41-50:7,50;
51-60:6,50;
61-110:6;

我首先要分解; 上的每一行,然后分解: 上的每一行。

所以我尝试了这个:

$explodesemicolon = explode(";",$artikel['basisstaffel']);
foreach ($explodesemicolon as $line) {
    $formatandprice = explode(":", $line);
    foreach ($formatandprice[0] as $result) {
        echo $result;
    }
}

但这没有任何反应。我做错了什么?

【问题讨论】:

  • 循环前将$formatandprice[0]替换为$formatandpriceecho $formatandprice[0]
  • $artikel['basisstaffel'] 在每个 ; 之后是否有换行符?

标签: php arrays loops explode


【解决方案1】:

您实际上并不需要内部循环,一旦您在 : 上爆炸,您就会知道结果数组中将出现 2 次。

$explodesemicolon = explode(";",$artikel['basisstaffel']);
foreach ($explodesemicolon as $line) {
    $formatandprice = explode(":", $line);

    // check explode did what we expect
    if ( count($formatandprice) == 2 ) {
        echo $formatandprice[0];   // format I assume
        echo $formatandprice[1];   // price I assume
    } else {
        // woops something went wrong
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    • 1970-01-01
    • 2011-07-27
    • 2022-01-25
    • 2011-07-06
    • 2014-12-05
    • 1970-01-01
    相关资源
    最近更新 更多