簡體   English   中英

如何從外部 JavaScript 檢索 PHP 中的內容

[英]How to retrieve content in PHP from external JavaScript

我有一個外部 JavaScript 文件,我想在我的 PHP 頁面中顯示數組內容。 如何循環顯示內容。 我嘗試使用以下代碼顯示內容。 但失敗了。

 <?php
 ini_set('allow_url_fopen', 'On');

$feed = file_get_contents("https://example.com/media-list.js");
$array = json_decode($json);
var_dump($array);
$urlPoster=array();
foreach ($array as $value) { 
    $urlPoster[]=$value->urlPoster;
}
print_r($urlPoster);
 ?>

media-list.js 內容

var contents = {
    "0W7EHsR8":{
        "attachmentCode":"0W7EHsR8",
        "title":"title1",

    },  

    "vciym7Zb4":{
        "attachmentCode":"vciym7Zb4",
        "title":"title2",

    },  

    "XlKBM6":{
        "attachmentCode":"XlKBM6",
        "title":"Title3",

    }
};

我想顯示類似的內容

標題是“title1”。

標題是“title2”。

您正在嘗試在 Javascript 陣列上使用json_decode() JSON 和 Javascript 是兩個不同的東西。
您需要將您的contents數組轉換為contents.json ,將其保存在不同的文件中(例如 content.json)並使用file_get_contents加載該文件。
如果你只需要這樣做一次,你可以做類似的事情

var contents = {
    "0W7EHsR8":{
        "attachmentCode":"0W7EHsR8",
        "title":"title1",

    },  

    "vciym7Zb4":{
        "attachmentCode":"vciym7Zb4",
        "title":"title2",

    },  

    "XlKBM6":{
        "attachmentCode":"XlKBM6",
        "title":"Title3",

    }
};

console.log(JSON.stringify(contents));

並從控制台復制結果(單擊 CTRL+Shift+I 打開它)。

JSON.stringify()采用 Javascript 數組並將其轉換為 JSON 字符串。

對於這個小陣列,等效的 JSON 是

{"0W7EHsR8":{"attachmentCode":"0W7EHsR8","title":"title1"},"vciym7Zb4":{"attachmentCode":"vciym7Zb4","title":"title2"},"XlKBM6":{"attachmentCode":"XlKBM6","title":"Title3"}}

如果您打算使這種動態化(例如,從數據庫加載所有附件),您可以創建一個 php 文件,該文件將該數據加載到一個數組中,並使用 json_encode() 將其返回到正確的 JSON 中。 使用 file_get_contents 加載該文件並像現在一樣使用 json_decode 應該可以解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM