PHP中如何关联Array对象values的索引与status数组的索引并赋值
问题实现方案
注意:你开头的文字描述与示例实际逻辑存在偏差:
文字描述逻辑:子数组存在非null值则将对应status索引设为"1"
示例匹配逻辑:子数组所有元素均为非null值才将对应status索引设为"1"
以下优先提供示例匹配逻辑的代码,末尾附文字描述逻辑的修改方法。
核心实现思路
遍历values时同步获取对应索引N,直接用该索引修改status数组对应位置的值即可,无需额外做索引映射(题目已明确两个数组索引一一对应)。
PHP 实现代码
foreach ($values as $n => $subArray) { // 校验子数组所有元素都不是字符串"null",如果是原生null类型,把"null"改为null即可 $allNotNull = !in_array("null", $subArray); if ($allNotNull) { $status[$n] = "1"; } }
JavaScript 实现代码
values.forEach((subArray, n) => { // 校验子数组所有元素都不是字符串"null",如果是原生null类型,判断条件改为item !== null即可 const allNotNull = subArray.every(item => item !== "null"); if (allNotNull) { status[n] = "1"; } })
若要按文字描述逻辑实现(存在非null值即设为1)
- PHP修改判断条件为:
$hasNotNull = count(array_filter($subArray, fn($item) => $item !== "null")) > 0; - JavaScript修改判断条件为:
const hasNotNull = subArray.some(item => item !== "null");
内容的提问来源于stack exchange,提问作者Ozias Junior
相关产品推荐
相关产品推荐

