首頁  >  文章  >  後端開發  >  具有陣列結構的字串如何轉換為實際的陣列?

具有陣列結構的字串如何轉換為實際的陣列?

Susan Sarandon
Susan Sarandon原創
2024-10-30 05:32:28816瀏覽

How Can a String with an Array Structure Be Transformed into an Actual Array?

將具有陣列結構的字串轉換為陣列

將具有陣列結構(如「Main.Sub.SubOfSub」)的字串轉換為實際陣列可以使用以下方法實作適當的程式碼。假設您有以下字串值:

Main.Sub.SubOfSub

和對應的資料項:

SuperData

目標是建構一個具有下列結構的陣列:

Array
(
[Main] => Array
    (
        [Sub] => Array
            (
                [SubOfSub] => SuperData
            )

    )
)

要執行此轉換,請考慮以下程式碼片段:

<code class="php">$path = explode('.', $key);
$root = &amp;$target;

while (count($path) > 1) {
    $branch = array_shift($path);
    if (!isset($root[$branch])) {
        $root[$branch] = array();
    }

    $root = &amp;$root[$branch];
}

$root[$path[0]] = $value;</code>

此程式碼本質上實作了根據提供的字串路徑建立關聯數組結構的邏輯。它迭代路徑段,根據需要建立嵌套數組,並將提供的資料分配給路徑的最後一段。

透過使用引用運算子 (&),程式碼直接修改原始目標數組,確保產生的數組具有所需的結構。

以上是具有陣列結構的字串如何轉換為實際的陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn