PHP數組從URL參數中取得的行為不如預期
P粉785905797
P粉785905797 2024-04-06 22:09:02
1
1
1048

我有一個包含類別 ID 的 URL 參數,我想將其視為一個數組,如下所示:

http://example.com?cat[]=3,9,13

在 PHP 中,我使用它從 URL 參數取得陣列:

$catIDs = $_GET['cat'];

當我執行echogettype($catIDs);時,它表明它實際上被視為數組,但是當我執行print_r($catIDs);時,我得到以下結果:

Array ([0] => 3,9,13)

但我期待這個:

Array ([0] => 3, [1] => 9, [2] => 13)

我在這裡缺少什麼?謝謝!

P粉785905797
P粉785905797

全部回覆 (1)
P粉267791326

錯誤不在伺服器/PHP 端,而是在客戶端/請求端。給定的 URL 為您提供一個包含一個元素的數組,即一個以逗號分隔的字串:

cat[]=3,9,13

產量:

["3,9,13"]

要透過 URL 參數指定數組,您需要為每個項目重複參數名稱:

cat[]=3&cat[]=9&cat[]=13

產量:

["3","9","13"]

或者,您可以指定一個以逗號分隔的參數:

cat=3,9,13

然後將其拆分:

$cat = explode(',', $_GET['cat']);
    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!