2011-01-16 10 views
0

私は、直列化された要素の順序/並べ替えを与える入れ子になったjQueryプラグインを使用しています。 PHPでネストされたツリーをデータベースに追加して注文する

そしてこのserialitzationの例(ルートは意味PARENT_ID = 0):私は&で爆発さやる

id[1]=root&id[5]=1&id[2]=1&id[3]=1&id[4]=3 

まず最初:

$serialized = "id[1]=root&id[5]=1&id[2]=1&id[3]=1&id[4]=3"; 

$exploded = explode("&", $serialized); 

しかし、私はその後、方法がわかりませんid[1]=rootまたはid[3]=1を管理してください。私はそれをどのようにすることができますか?

そして別の質問です。このようにして、注文をどのように保管するのかがわかりません。私がarray("id"=>1, "parent"=>"root");のような配列で爆発したとき、私は注文を保存しました。私は指数でそれを行いますが、どのように入れ子になったレベルを認識していますか?

例:

$i = 0; 

foreach($exploded as $explode) 
{ 
    //update every id in MySQL and set parent=$explode["parent"] and order=$i 
    $i++; 
} 

しかし、私はNレベルをしている場合、私はそれらの一つ一つのための$インデックスiをどのように持つことができますか?

ありがとうございます!

答えて

1

むしろ爆発よりも、あなたは、配列を操作することができ、そこからparse_str()

<?php 
parse_str("id[1]=root&id[5]=1&id[2]=1&id[3]=1&id[4]=3",$result); 
print_r($result); 
?> 

を試みることができます。

関連する問題