亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果視頻不存在,則僅從數據庫中輸出無效的 YouTube ID

如果視頻不存在,則僅從數據庫中輸出無效的 YouTube ID

PHP
holdtom 2023-06-18 17:06:31
我的數據庫中存儲了 YouTube 視頻 ID。我正在嘗試輸出僅無效的 ID。我正在使用get_headers / oembed,它允許我檢查 YouTube 上是否存在視頻。然后我循環遍歷 ID。這目前正在工作,但它顯示了我表中的所有 YouTube ID,然后將文本“無效”添加到無效的那些。我只需要顯示那些無效的 - 沒有別的!如果有人不介意的話,我需要一些幫助。我真的很感激。代碼:$servername = "localhost";$username = "";$password = "";$dbname = "";// Create connection$conn = new mysqli($servername, $username, $password, $dbname);// Check connectionif ($conn->connect_error) {   die("Connection failed: " . $conn->connect_error);}$sql = "SELECT src_id FROM youtube_videos ";$result = $conn->query($sql);while($row = $result->fetch_assoc()) {    echo 'Video ID: '.$row["src"];    $headers = get_headers('http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v='.$row["src_id"].'');    if (!strpos($headers[0], '200')) {        echo " is invalid";    } else {        echo "";    }    echo 'no results';}
查看完整描述

1 回答

?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

如果標題代碼不是 200,只需打印視頻 ID?


while ($row = $result->fetch_assoc()) {

    $headers = get_headers('http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v='.$row["src_id"].'');

    if (!strpos($headers[0], '200')) {

        echo "Video ID: ".$row['src']." is invalid\n";

    }

}

可能還想研究一種更好的獲取響應標頭的方法,該方法可能并非對所有情況都 100% 準確。我建議使用類似的東西


while ($row = $result->fetch_assoc()) {

    $headers = get_headers('http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v='.$row["src_id"].'');

    if (substr($headers[0], 9, 3) != 200) {

        echo "Video ID: ".$row['src']." is invalid\n";

    }

}


查看完整回答
反對 回復 2023-06-18
  • 1 回答
  • 0 關注
  • 129 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號