简体   繁体   English

PHP从mssql提取数组中删除重复的值

[英]PHP remove duplicated values from mssql fetch array

I have working php mssql query codes with array but output don't delete same chars. 我有使用数组的PHP mssql查询代码,但输出不会删除相同的字符。 My codes here 我的代码在这里

    $querysfzzrf88 = " SELECT * FROM Style WHERE StyleNo='$StyleNo'";
        $resultsfzzrf88 = mssql_query($querysfzzrf88);


        //display the results 
        while($rowsfzzrf88 = mssql_fetch_array($resultsfzzrf88))
        {
        $Status88 = $rowsfzzrf88["Status"];


   echo $Status88;
}

Output 产量

 LNNNMMMMMMM

Also

var_dump($Status88); 

Gives Like this 这样给

string(1) "N" string(1) "N" string(1) "N" string(1) "L"

I want Output 我想要输出

LNM

use count_chars() 使用count_chars()

$str = "LNNNMMMMMMM";

echo count_chars($str, 3); 

Second parameter is mode , 第二个参数是mode

3 - a string containing all unique characters is returned.

See demo here 在此处查看演示

Edit 编辑

Try this, 尝试这个,

$str = " LNNNMMMMMMM";
echo preg_replace("/(.)\\1+/", "$1", $str); or echo preg_replace('/(.)\1+/', '$1', $str);

See demo here 在此处查看演示

sorry if I misunderstood your question, is this what you've expected: 抱歉,如果我误解了您的问题,这是您所期望的吗?

<?php
$chars = 'LNNNMMMMMMM';
$array = str_split($chars);
$array = array_count_values($array);
$array = array_flip($array);
echo implode('', $array);
?>

it produces LNM as a result 结果产生了LNM

UPDATE: 更新:

//display the results
$duplicated88 = $Status88 = $unique88 = array();
while($rowsfzzrf88 = mssql_fetch_array($resultsfzzrf88)){
    $duplicated88[] = $Status88[] = $unique88[] = $rowsfzzrf88["Status"];
}
sort($unique88); 
sort($duplicated88);
$unique88 = implode('', array_unique($unique88));

print($unique88);

USE DISTINCT in your mysql query to avoid duplicate values: 在MySQL查询中使用DISTINCT以避免重复值:

 $querysfzzrf88 = " SELECT DISTINCT status FROM Style WHERE StyleNo='$StyleNo'";
        $resultsfzzrf88 = mssql_query($querysfzzrf88);


        //display the results 
        while($rowsfzzrf88 = mssql_fetch_array($resultsfzzrf88))
        {
        $Status88 = $rowsfzzrf88["Status"];


   echo $Status88;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM