У меня есть проблема, как вы можете видеть в данных json, у меня есть 3 массива, 2 из них "kind": "youtube#video",
и один "kind": "youtube#playlist"
, php-код вставляет данные из json и работает отлично, но когда в json "kind": "youtube#playlist",
он неработа в настоящее время, мне нужно вставить только из #video, пожалуйста, помогите мне попробовать исправить это весь денькак SKIP массивы с плейлистом?только выбирать информацию из массива #video, пропуская другие и получая информацию только из «kind»: «youtube # video», массивов.
Ошибка при #playlist в json
Примечание: не определеноindex: videoId в D: \ xampp \ htdocs \ test \ index.php в строке 62
62LINE: $ videos [$ key] = $ items ['id'] ['videoId'];
КОД:
$loop = mysqli_query($conn, "SELECT channelid FROM users ORDER BY id")
or die (mysqli_error($conn));
while ($row = mysqli_fetch_array($loop))
{
$channelid = $row['channelid'];
$content = file_get_contents($url);
$json = json_decode($content, true);
if(!isset($json['items'])) continue; //skip if no items
$videos = ['videoId'=>'','videoId1'=>'','videoId2'=>'','videoId3'=>'','videoId4'=>''];
$videossw = ['vidname'=>'','vidname1'=>'','vidname2'=>'','vidname3'=>'','vidname4'=>''];
$videoss = ['publishedAt'=>'','publishedAt1'=>''];
$i = 0;
//if(isset($videoList[$i]["id"]["videoId"])) {
foreach($json['items'] as $items)
{
$keyy = 0==$i ? 'publishedAt' : 'publishedAt'.$i;
$videoss[$keyy] = $items['snippet']['publishedAt'];
$keyyy = 0==$i ? 'vidname' : 'vidname'.$i;
$videossw[$keyyy] = $items['snippet']['title'];
$key = 0==$i ? 'videoId' : 'videoId'.$i;
$videos[$key] = $items['id']['videoId'];
++$i;
}
$qqq = 'INSERT INTO users(channelid, publishedAt, publishedAt1, videoId, videoId1, videoId2, videoId3, videoId4, vidname, vidname1, vidname2, vidname3, vidname4) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ON DUPLICATE KEY UPDATE channelid=?, publishedAt=?, publishedAt1=?, videoId=?, videoId1=?, videoId2=?, videoId3=?, videoId4=?, vidname=?, vidname1=?, vidname2=?, vidname3=?, vidname4=?';
$stmt = $conn->prepare($qqq);
$stmt->bind_param('ssssssssssssssssssssssssss', $channelid, $videoss['publishedAt'], $videoss['publishedAt1'], $videos['videoId'], $videos['videoId1'], $videos['videoId2'], $videos['videoId3'], $videos['videoId4'], $videossw['vidname'], $videossw['vidname1'], $videossw['vidname2'], $videossw['vidname3'], $videossw['vidname4'], $channelid, $videoss['publishedAt'], $videoss['publishedAt1'], $videos['videoId'], $videos['videoId1'], $videos['videoId2'], $videos['videoId3'], $videos['videoId4'], $videossw['vidname'], $videossw['vidname1'], $videossw['vidname2'], $videossw['vidname3'], $videossw['vidname4']);
$stmt->execute();
}