Foreach ループは、データを反復処理するための最良の方法です。コードをもう少しきれいにしたい場合は、3 値バージョンを使用してみてください
<?php foreach($query as $record) : ?>
   <?php foreach($record as $field => $value) : ?>
        *Things that need to be done on each field-value pair*
    <?php endforeach; ?>
    *Things that need to be done on each row*
<?php endforeach; ?>
また、上記のコメントで述べたように、データベースに分離されたデータを保存すると、多くの機能が失われます。これを行う必要がある場合は、区切り文字列の代わりにシリアル化されたオブジェクトを格納してみてください。json_encode()やjson_decode( )など、さまざまな方法でオブジェクトを操作できます。
   $myArray = array();
    $myArray['User1']['book'] = 'Pride and Prejudice';
    $myArray['User1']['favorites'] = 'Water skiing';
    $myArray['User2']['book'] = 'Mansfield Park';
    $myArray['User2']['favorites'] = array('skateboarding', 'surfing', 'running');
    $myArray['description'] = 'Things people like.';        
    echo '<pre>';
    print_r(json_encode($myArray)); //This will convert your array to a string for the db
    echo '</pre>';
    echo '<pre>';
    $myArrayString = json_encode($myArray);
    print_r(json_decode($myArrayString)); //This will convert the db string to an object for manipulation
echo '</pre>';