似乎很简单,但我很喜欢,失去了很多时间在这...并没有成功...
如果我有一个字符串:
$str = "She sells seashells"
所以,我把每个单词都成为一个数组元素
$array = explode(" ", $str);
我需要的是,每一个字接收祖先元素(如果有的话),并在未来的...
实施例结果JSON格式(更容易证明)
"{"She":["sells","seashells"],"sells":["She","seashells"],"seashells":["She","sells"]}"
谁能帮助?
谢谢!
真的,你可以复制源阵列的每个键,不包括关键:
$str = "She sells seashells";
$array = explode(" ", $str);
$res = [];
for($i = 0; $i < count($array); $i++) {
$res[$array[$i]] = $array;
unset($res[$array[$i]][$i]);
}
print_r($res);
<?php
$str = "She sells seashells";
$arr = explode(" ",$str);
$length = count($arr);
$result = [];
for($i = 0;$i < $length;++$i){
$result[$arr[$i]] = [];
foreach ($arr as $each_val) {
if($each_val === $arr[$i]) continue;
$result[$arr[$i]][] = $each_val;
}
}
echo json_encode($result);
OUTPUT:
{"She":["sells","seashells"],"sells":["She","seashells"],"seashells":["She","sells"]}
result
阵列,并在for循环作为它的关键当前迭代值。result
数组键添加值。