Maison  >  Article  >  développement back-end  >  Utiliser la méthode de réorganisation de tableau multidimensionnel PHP, compatible avec l'interface API

Utiliser la méthode de réorganisation de tableau multidimensionnel PHP, compatible avec l'interface API

王林
王林original
2019-08-22 09:54:321959parcourir

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn