array(1) {
[0] => string(18) "AnotherTestSnippet"
}
array(1) {
[0] => string(17) "Test Code Snippet"
}
array(1) {
[0] => string(18) "AnotherTestSnippet"
}
array(1) {
[0] => string(17) "Test Code Snippet"
}
如何使用PHP将上述数组转换为此格式?
array("AnotherTestSnippet","Test Code Snippet")
即清理并删除重复项。我尝试过array_unique和in_array,但它不起作用。感谢。
答案 0 :(得分:5)
让我们通过$ array4调用你的数组$ array1。这是解决方案:
$cleanArray = array_unique(array_merge($array1, $array2, $array3, $array4));
编辑:
现在我知道你是从单个多维数组开始的,这不是正确的答案。正确的答案是Dainis Abols给出的for循环。
答案 1 :(得分:2)
只需循环并仅保存您的唯一条目:
<?php
$array = array (
array( "AnotherTestSnippet" ),
array( "Test Code Snippet" ),
array( "AnotherTestSnippet" ),
array( "Test Code Snippet" )
);
$new_array = array();
foreach ( $array as $value )
{
if( !in_array( $value[0], $new_array) ) $new_array[] = $value[0];
}
输出:
Array
(
[0] => AnotherTestSnippet
[1] => Test Code Snippet
)
答案 2 :(得分:0)
读取你的评论var_dump输出是错误的。您没有四个单独的数组,而是一个包含这些数组的多维数组。
您可以使用这样的闭包使用array_walk_recursive遍历数组:
$input = array(
array('AnotherTestSnippet'),
array('Test Code Snippet'),
array('AnotherTestSnippet'),
array('Test Code Snippet')
);
$result = array();
array_walk_recursive($input, function($a) use (&$result) {
$result[] = $a;
});
$result = array_unique($result);
var_dump($result);
这回应:
array (size=2)
0 => string 'AnotherTestSnippet' (length=18)
1 => string 'Test Code Snippet' (length=17)
答案 3 :(得分:0)
<?php
$a = array("AnotherTestSnippet");
$b = array("Test Code Snippet");
$c = array("AnotherTestSnippet");
$d = array("Test Code Snippet");
$e = array_unique( array_merge( $a, $b, $c, $d ) );
var_dump( $e );
给出:
array(2) {
[0]=>
string(18) "AnotherTestSnippet"
[1]=>
string(17) "Test Code Snippet"
}
答案 4 :(得分:0)
array_unique
与array_merge
。$cleanArray = array_merge($array1, $array2, ... )
$cleanArray = array_unique($cleanArray);
答案 5 :(得分:0)
使用以下内容在值和键中获取已清理的数组:
$cleanedarray = array_values(array_unique(array_merge($array1, $array2, $array3, $array4)));
答案 6 :(得分:0)
请试试这个
<?php
$a[]=array ( 0 => 'AnotherTestSnippet', );
$a[]=array ( 0 => 'Test Code Snippet', );
$a[]=array ( 0 => 'AnotherTestSnippet', );
$a[]=array ( 0 => 'Test Code Snippet', );
foreach($a as $key=>$value)
{
foreach($value as $key1=>$value1)
{
$new_array[]=$value1 ;
}
}
echo "<pre>";
print_r($new_array);
echo "</pre>";