Преобразуйте длинную строку в массив и напечатайте результат в таблицу с PHP

0

Я посмотрел на подобные вопросы, но я не мог связать их с моей проблемой. Как преобразовать эту строку в массив в печать в табличном формате? Или как я могу напечатать эту строку в таблице с ссылочным номером, номером клиента, номером контракта, порядком, номером транзакции, датой передачи, статусом, кодом ответа, суммой, следующей попыткой, стоимостью для клиента, суммой, исключающей стоимость для клиента, как заголовки таблицы и остальные данные таблицы.

Ссылочный номер, номер клиента, номер контракта, последовательность, номер транзакции, дата передачи, статус, код ответа, собранная сумма, дата следующей попытки, стоимость для клиента, Amout без учета затрат клиенту 2518750,2,2,1,22439195,2014- 11-19 10: 31: 56, Успешно, 00,5.00, 0,005,00 2518753, GK000001, M8PAY004,1,22439198,2014-11-19 10: 58: 27, Успешно, 00,189,99, 0,00189,99 2518754, GK000001, M8PAY004,1,22439199,2014-11-19 11: 00: 39, Успешно, 00,99,99, 0,00,99,99 2518755, GK000001, GK000001,1,22439200,2014-11-19 11:17:08, Успешно, 00,30.00, 0,00,30,00 2518756, GK000001, M8PAY004,1,22439201,2014-11-19 11: 21: 48, Успешно, 00,189.99, 0,0018,99 2518757, GK000001, M8PAY0041,1,22439202,2014 -11-19 11: 39: 53, Успешно, 00,299.99, 0,00,299,99 2518758, GK000001, M8PAY004,1,22439203,2014-11-19 12: 16: 13, Успешно, 00,299.99, 0,00,299,99 2518759, GK000001, PM8PAY004,1,22439204,2014-11-19 12: 43: 49, Успешно, 00,189.99, 0,00,189.99 2518760, GK000001, M8PAY004,1,22439205,2014-11-19 13: 14: 07, Failed, 56, 0,00, 0,00,0,00 2518761, GK000 001, PM8PAY004,1,22439206,2014-11-19 13: 14: 31, сбой, 56,0,00, 0,00,0,00 2518762, GK000001, GK000001,1,22439207,2014-11-19 13:17:07, Успешно, 00,30.00, 0,00,30,00 2518763, GK000001, M8PAY004,1,22439208,2014-11-19 13: 20: 39, Сбой, 56,0,00, 0,00,0,00 2518764, GK000001, M8PAY004,1,22439209, 2014-11-19 13: 23: 16, Сбой, 56,0,00, 0,00 0,00 25,007, GK000001, M8PAY004,1,22439210,2014-11-19 13: 24: 31, Успешно, 00,189.99, 0,00, 189,99

Это ответ от веб-службы, которую я потребляю. Я попытался использовать функцию explode, но он дал мне массив из сотен элементов.

Спасибо за помощь.

  • 0
    Вы должны взглянуть на функции CSV в PHP, я думаю, это то, что вам нужно здесь.
  • 1
    В дополнение к предоставленной ссылке @caCtus вы можете посмотреть ответы на этот вопрос: stackoverflow.com/questions/518795/…
Показать ещё 3 комментария
Теги:
arrays

1 ответ

0
Лучший ответ

Вы упомянули строку, так что это может быть легко:

<table>
    <?php
    $content = "Reference Number,Client Number,Contract Number,Sequence,Transaction Number,Transmission Date,Status,Response Code,Amount Collected,Next Attempt Date,Cost To Client ,Amout Excluding Cost To Client 
    2518750,2,2,1,22439195,2014-11-19 10:31:56,Successful,00,5.00,,0.00,5.00 
    2518753,GK000001,M8PAY004,1,22439198,2014-11-19 10:58:27,Successful,00,189.99,,0.00,189.99 
    2518754,GK000001,M8PAY004,1,22439199,2014-11-19 11:00:39,Successful,00,99.99,,0.00,99.99";
    $lines = explode("\n", $content);
    foreach ($lines as $line) {
        $pieces = explode(",", $line);
        echo '<tr>' . "\n";
        foreach ($pieces as $piece) {
            echo '<td>' . trim($piece) . '</td>' . "\n";
        }
        echo '</tr>' . "\n";
    }
    ?>
</table>

Если у вас есть контент в строке, как caCtus sad, вы можете использовать функцию fgetcsv.

ПРИМЕЧАНИЕ. Как я вижу, количество свойств и количество данных не совпадают.

  • 0
    Благодарю. Это решение помогло мне. Я все еще собираюсь попробовать другие предложения тоже.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню