Как я могу десериализовать или Json декодировать или распаковать данные из базы данных в Laravel Blade? - PullRequest
0 голосов
/ 24 мая 2019

Я сохранил данные из формы с массивом Serialize и Implode и Json_encode , как показано ниже:

Сериализация

+-------+----------------------------------------+-------------------------------------+----------------------------------------+
| Agent |                Customers               |                Cars                 |                 Money                  |
+-------+----------------------------------------+-------------------------------------+----------------------------------------+
| SMITH |  a:2:{i:0;s:4:"Jack";i:1;s:4:"Mike";}  | a:2:{i:0;s:3:"BMW";i:1;s:4:"Audi";} | a:2:{i:0;s:5:"1000$";i:1;s:5:"1500$";} |
| ...   | ...                                    | ...                                 | ...                                    |
+-------+----------------------------------------+-------------------------------------+----------------------------------------+

Имплоз

+-------+------------+----------+-------------+
| Agent |  Customers |   Cars   |    Money    |
+-------+------------+----------+-------------+
| SMITH |  Jack,Mike | BMW,Audi | 1000$,1500$ |
| ...   | ...        | ...      | ...         |
+-------+------------+----------+-------------+

Json_encode

+-------+-----------------+----------------+-------------------+
| Agent |    Customers    |      Cars      |       Money       |
+-------+-----------------+----------------+-------------------+
| SMITH | ["Jack","Mike"] | ["BMW","Audi"] | ["1000$","1500$"] |
| ....  | ....            | ...            | ...               |
+-------+-----------------+----------------+-------------------+

Я хочу показать данные в админке, как показано ниже:
Агент СМИТ продано BMW автомобиль до Джек с 1000 $ и Audi автомобиль до Mike с 1500 $

---------------------
Как я могу сделать это с 3 способами Unserialize, Unimplode и Json_decode ?

1 Ответ

0 голосов
/ 24 мая 2019

Так что я рассматриваю ваш массив

$yourArray = [
    'Agent' => 'SMITH',
    'Customers' => ["Jack", "Mike"],
    'Cars' => ["BMW", "Audi"],
    'Money' => ["1000$", "1500$"],
];

И ваш ожидаемый результат -

$yourExpectedOutPut = 'Agent SMITH sold BMW car to Jack with 1000$ and Audi car to Mike with 1500$';

Итак, сначала импортируйте это в свое пространство имен

use Illuminate\Support\Arr;

$agentName = Arr::get($yourArray, 'Agent');
$customers = Arr::get($yourArray, 'Customers');
$cars = Arr::get($yourArray, 'Cars');
$Money = Arr::get($yourArray, 'Money');


    foreach ( $customers as $customerIndex => $customerName) 
    {
        $perparedArray[] = $cars[$customerIndex] . ' car to '. $customerName.' with '. $Money[$customerIndex];
    }

$preparedString = 'Agent '. $agentName.' sold '.implode(' and ', $perparedArray);

echo $preparedString;

Agent SMITH sold BMW car to Jack with 1000$ and Audi car to Mike with 1500$

если у вас есть какие-либо сомнения или обнаружены какие-либо проблемы или если ответ не тот, который вы ищете пожалуйста, прокомментируйте ниже

...