Можно ключ массива разбить с помощью регулярного выражения, а дальше просто выбирать нужные значения. Пример:
$arr = [
    'telephone' => '+7(999) 999-99-99',
    'name0' => 'Имя 1',
    'quantity0' => '1',
    'name1' => 'Имя 2',
    'quantity1' => '2',
    'name20' => 'Имя 3',
    'quantity20' => '3',
    'totalCost' => '3380',
];
foreach ($arr as $k => $v) {
    if(preg_match("/^([a-zA-Z_]+)(\d+)$/", $k, $matches)) {
        $key = $matches[1];
        $idx = $matches[2];
    } else {
        $key = $k;
    }
    if($key === 'quantity') {
        continue;
    }
    if($key === 'name') {
        printf('Name: %s, Quantity: %s<br>', $v, $arr['quantity'.$idx]);
        continue;
    }
    
    printf('%s: %s<br>', $k, $v);
}
Но, если есть такая возможность, лучше передавать данные из формы следующим образом:
<form action="/test.php" method="POST">
  <input type="text" name="name[]" value="name 1">
  <input type="text" name="quantity[]" value="quantity 1">
  <input type="text" name="name[]" value="name 2">
  <input type="text" name="quantity[]" value="quantity 2">
  
  <input type="submit"  value="Submit">
</form>