Php 在数组中缓存json数据并引用ID来填充类型
我的函数以json格式返回一组属性ID及其对应的名称。例如:Php 在数组中缓存json数据并引用ID来填充类型,php,arrays,json,session,caching,Php,Arrays,Json,Session,Caching,我的函数以json格式返回一组属性ID及其对应的名称。例如: { "DETAILS": [ { "ATTR_ID": "522", "ATTRIBUTE_ID": "4222", "ATTRIBUTE_TYPE": "email", }, { "ATTR_ID": "523", "ATTRIBUTE_ID": "4006
{
"DETAILS": [
{
"ATTR_ID": "522",
"ATTRIBUTE_ID": "4222",
"ATTRIBUTE_TYPE": "email",
},
{
"ATTR_ID": "523",
"ATTRIBUTE_ID": "4006",
"ATTRIBUTE_TYPE": "interest",
}
]
}
我需要将其存储在需要缓存的数组中。(我可能会使用$\u会话)
现在,另一个函数返回一组属性ID:
$val_array = $subarray[arrayOfAttributes];
foreach ($val_array as $val)
{
print "Attrib Value: $val\n"; //This will print ids 4222,4223,etc
}
what I need to do is correspond the ids with the type from the cache nad print out the respective Types.
我无法将此逻辑表述为代码
function getAttrType($id, $array){
// $array is your 'DETAILS' array.
foreach($array as $a){
if($a['ATTR_ID'] == $id){
return $a['ATTRIBUTE_TYPE'];
}
}
}
print getAttrType(523, $array); // will output 'interest'
print getAttrType(522, $array); // will output 'email'
print getAttrType(123, $array); // will output nothing
不知道这是不是你想要的,也许这能帮你找到正确的方向
不知道这是否是您正在寻找的,也许这可以让您走上正确的方向。要只存储在$u会话中,您可以总是先序列化(json_decode())它,然后在需要时取消序列化(json_encode())。要只存储在$u会话中,您可以总是先序列化(json_decode())它,然后取消序列化(json_encode())当你需要它的时候就可以。