将数字添加到foreach循环php

时间:2020-01-22 07:56:09

标签: php

我创建了一个小脚本,该脚本从json文件中获取了一些结果

foreach ($obj as $key) {
    echo "encoder: ".($obj_info->customname)."\n";
    $naam = ($key->Name);
    echo "ChannelName: ". $naam." "."\n";
    if (isset($naam)) {
        foreach ($key->Device->Template->Tracks->AudioTracks as $audiotrack) {
            echo "AUDIO PID: ".$audiotrack->Pid."\n";
            echo "Codec:     ".$audiotrack->Encoding->Codec."\n";
        }

然后给出结果:

ChannelName: Channel X
AUDIO PID: 0
Codec:     MPEG AAC
AUDIO PID: 0
Codec:     MPEG AAC
AUDIO PID: 0
Codec:     MPEG AAC

因为音频pid结果是一个未知因素,所以我创建了这个foreach循环,但是我想根据结果在音频pid中添加一个数字

AUDIO PID 1: 0
Codec
AUDIO PID 2: 0
Codec

我该如何实现?

谢谢

马丁

1 个答案:

答案 0 :(得分:3)

好吧,就这么简单,您可以使用在每次迭代中递增的变量:

if (isset($naam)) {

    $pidNumber = 1; // <-------------

    foreach ($key->Device->Template->Tracks->AudioTracks as $audiotrack) {
        // -----------------v----------v
        echo "AUDIO PID " . $pidNumber++ . " : " . $audiotrack->Pid."\n";
        echo "Codec:     ".$audiotrack->Encoding->Codec."\n";
    }