Laravel – Как сохранить данные конечной точки отдыха API в моей базе данныхPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Laravel – Как сохранить данные конечной точки отдыха API в моей базе данных

Сообщение Anonymous »

Я использую Laravel 5.8 на своем сервере. У меня есть внешняя конечная точка:

https://api.abclm.net/customerss/allcustomers
Это запрос GET в формате JSON, как показано ниже.

Код: Выделить всё

[
{
"ClientID": "C001",
"ClientName": "ABU PLC",
"Address": "ADDRESS LINE 1",
"City": "Lagos"
},
"ClientID": "C002",
"ClientName": "ADE PLC",
"Address": "ADDRESS LINE 1",
"City": "Lagos"
},
"ClientID": "C003",
"ClientName": "JACOB PLC",
"Address": "ADDRESS LINE 1",
"City": "Lagos"
}
]
Затем на моем сервере есть эта таблица:

Код: Выделить всё

 CREATE TABLE `customers` (
`id` int NOT NULL,
`client_id` varchar(255) UNIQUE NOT NULL,
`client_name` varchar(255) UNIQUE NOT NULL,
`address` varchar(255) NOT NULL,
`city` varchar(255) NOT NULL

) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Класс модели — Customer.
  • Код: Выделить всё

    client_id
    и client_name уникальны и должны быть контрольными точками.
  • Я хочу сохранить все данные в конечной точке в то же время в моем классе модели клиента.
  • Он должен обновиться там, где client_id и client_name уже существуют, но вставьте туда, где нет
  • Код: Выделить всё

    ClientID
    в client_id, ClientName в client_name, Address в адрес
У меня есть что-то подобное, но я не знаю, как продолжить:

Код: Выделить всё

public function apiclient(Request $request)
{
$array_content=[];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.abclm.net/customerss/allcustomers");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //Important
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
$result = curl_exec($ch);

if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
curl_close ($ch);
$i=0;
foreach(...)
{
$newobj = new Clients();

....
array_push($array_content,$newobj);

$i++;
}
return $array_content;
}
У меня есть что-то подобное, но я не знаю, как это сделать. Пожалуйста, помогите.

Подробнее здесь: https://stackoverflow.com/questions/575 ... y-database
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»