php数组删除数组中的连续重复出现

Abb*_*asi 3 php arrays duplicate-removal

我想在这里提出的问题是:

无论如何我可以从下面的数组中删除连续的重复项,而只保留第一个?

数组如下所示:

$a=array("1"=>"go","2"=>"stop","3"=>"stop","4"=>"stop","5"=>"stop","6"=>"go","7"=>"go","8"=>"stop");
Run Code Online (Sandbox Code Playgroud)

我想要的是一个包含以下内容的数组:

$a=array("1"=>"go","2"=>"stop","3"=>"go","7"=>"stop");
Run Code Online (Sandbox Code Playgroud)

任何建议都会有帮助.问候.

小智 7

连续重复?我不知道本机功能,但这个功能.好吧差不多.认为我理解错了.在我的函数中,7 =>"go"是6 =>"go"的副本,而8 =>"stop"是新值...?

function filterSuccessiveDuplicates($array)
{
    $result = array();

    $lastValue = null;
    foreach ($array as $key => $value) {
        // Only add non-duplicate successive values
        if ($value !== $lastValue) {
            $result[$key] = $value;
        }

        $lastValue = $value;
    }

    return $result;
}
Run Code Online (Sandbox Code Playgroud)