Dans le développement PHP normal, nous appelons généralement des API tierces pour répondre à nos besoins commerciaux, mais nous rencontrerons des situations où le format des données de retour n'est pas uniforme, en particulier lorsque les données renvoyées par l'interface API tierce sont compatibles avec notre interface API, nous devons actuellement utiliser la méthode de réorganisation des tableaux multidimensionnels PHP.
1. Demander le format renvoyé par l'interface API tierce
array(1) { [0] => array(20) { 'url' => string(147) "http:/*************************************************/*****" 'filemtime' => int(1525688855) 'app' => string(11) "smarket_dev" 'stream' => string(23) "stream20180507102518_67" 'start' => int(1525688855) 'end' => int(1525689358) 'm3u8' => string(147) "http://*******************************/**************************/" 'duration' => int(503) 'thumbnail' => string(100) "https://cdn-************************/********************" 'size' => int(9259195) 'width' => int(640) 'height' => int(360) 'begin' => int(0) 'uptime' => int(1525689364) 'update' => int(1525689364) 'id' => string(24) "5af02c1415d5239acc6ee28e" 'title' => string(9) "未定义" 'desc' => string(9) "未定义" 'case' => string(1) "0" 'caseName' => string(3) "无" } }
L'interface API tierce renvoie généralement une chaîne au format tableau, nous peut utiliser des tableaux pour le traiter et le traiter dans le format souhaité.
2. Écrivez une méthode de traitement dans la classe, appelez simplement cette méthode, et les données renvoyées sont ce que nous voulons .
function getRecordInfo($webcastId) { $app = 'webinar'; $stream = $webcastId; $_access_id = '***********'; $_access_key = '*************'; $_openApiUrl = 'http://*************/*******/'; $service = new \webinar\_services\webCast\Impl\AodianyunApi($_access_id, $_access_key, $_openApiUrl); $result = $service->vodGetInfo($app, $stream); foreach ($result as $value) { $results[] = [ 'createdTime' => $value['filemtime'], 'id' => $value['stream'], 'recordStartTime' => $value['start'], 'recordEndTime' => $value['end'], 'size' => $value['size'], 'subject' => $value['title'], 'url' => $value['url'] ]; } return $results; }
3. Données renvoyées par getRecordInfo
array(100) { [0] => array(7) { 'createdTime' => int(1527072944) 'id' => string(6) "stream" 'recordStartTime' => int(1527072944) 'recordEndTime' => int(1527073551) 'size' => int(131098618) 'subject' => string(9) "未定义" 'url' => string(105) "https://cdn-************************/********************" } [1] => array(7) { 'createdTime' => int(1526029294) 'id' => string(6) "stream" 'recordStartTime' => int(1526029294) 'recordEndTime' => int(1526029826) 'size' => int(114636073) 'subject' => string(9) "未定义" 'url' => string(105) "https://cdn-************************/********************" }
4. Carte d'idées :
Définissez getRecordInfo() qui traite l'interface tierce =》Demandez l'API tierce dans getRecordInfo()=》Donnez les données renvoyées par l'API tierce au result=》Formatez les données de résultat.
J'espère que cet article pourra aider tout le monde. Veuillez signaler toute erreur dans l'article. Merci!
Pour plus de problèmes liés à PHP, veuillez visiter le site Web PHP chinois : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!