Fun*_*end 15 php arrays laravel
我有这个数组:
$list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere');
Run Code Online (Sandbox Code Playgroud)
使用die()+ var_dumo()这个数组返回给我:
array:2 [?
0 => "hc1wXBL7zCsdfMu"
1 => "dhdsfHddfD"
2 => "otheridshere"
]
Run Code Online (Sandbox Code Playgroud)
我想检查一下design_id是否在$ list_desings_ids数组中退出.
例如:
foreach($general_list_designs as $key_design=>$design) {
#$desing->desing_id return me for example: hc1wXBL7zCsdfMu
if(array_key_exists($design->design_id, $list_desings_ids))
$final_designs[] = $design;
}
Run Code Online (Sandbox Code Playgroud)
但这对我不起作用,正确的方法是什么?
Has*_*aan 22
你可以用in_array它.
尝试
$design_id = 'hc1wXBL7zCsdfMu';
$list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere');
if(in_array($design_id, $list_desings_ids))
{
echo "Yes, design_id: $design_id exits in array";
}
Run Code Online (Sandbox Code Playgroud)
Qaz*_*azi 16
相反,array_key_exists你只需键入in_array这将解决您的问题,因为如果您转储此数组
$list_desings_ids = array('hc1wXBL7zCsdfMu','dhdsfHddfD','otheridshere');
Run Code Online (Sandbox Code Playgroud)
输出将是,
array(
0 => hc1wXBL7zCsdfMu,
1 => dhdsfHddfD,
2 => otheridshere
)
Run Code Online (Sandbox Code Playgroud)
所以你的代码array_key_exists不起作用,因为这里0,1,2存在键,所以,你想要检查值,所以对于值,只需这样做in_array它将在你提到/创建的数组中搜索你想要的值
您的数组没有key。
尝试这个
foreach($general_list_designs as $key_design=>$design) {
#$desing->desing_id return me for example: hc1wXBL7zCsdfMu
if(in_array($design->design_id, $list_desings_ids))
$final_designs[] = $design;
}
Run Code Online (Sandbox Code Playgroud)
您只需要更改您的条件,然后用该代码替换即可
if(in_array($design->design_id, $list_desings_ids))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
39265 次 |
| 最近记录: |