как разбить строку на массив и отсортировать их - PullRequest
0 голосов
/ 20 сентября 2019

Я работаю над модулем, в котором я сохранил строку в столбце, разделенном запятой (,), и я разделил строку на массив и добавил массив в выпадающий список, но когда я делаю это с несколькими столбцами,это не сортировка массива в выпадающем списке

вот код

   $pp=DB::table('gcp_projects')->where('niche','!=',' ')->where('niche','!=','')->where('niche','!=',null)->orderBy('niche')->pluck('niche');
$testing=explode(",",$pp);


$arr=array();
$tttt=array();
for($i=0;$i<=count($pp);$i++)
{
 $arr= explode(",",$pp);
 $temp = preg_replace("/[^a-zA-Z 0-9]+/", "", $arr);
$tttt=array_unique($temp);
sort($tttt);

}

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019
<?php 

// Use preg_split() function 
$string = "123,456,78,000"; 
$str_arr = preg_split ("/\,/", $string); 
print_r($str_arr); 

// use of explode 
$string = "123,46,78,000"; 
$str_arr = explode (",", $string); 
print_r($str_arr); 
?> 

вы можете сделать это так и использовать опцию сортировки как

$values = array ("zercggj.co.uk", "lkjhg.org.au", "qqxze.org.au",
                 "bfhgj.co.uk", "sdfgh.org.uk");

echo "<br>input:<br>";
foreach ($values as $host) echo "$host<br>";

// create a suitable structure
foreach ($values as $host)
{
    $split = explode('.', $host, 2);
    $printable[$split[1]][] = $split[0];
}

// sort by domains
asort ($printable);

// output
echo "<br>sorted:<br>";
foreach ($printable as $domain => $hosts)
{
    echo "domain: $domain<br>";

    // sort hosts within the current domain
    asort ($hosts);

    // display them
    foreach ($hosts as $host)
        echo "--- $host<br>";
}
0 голосов
/ 20 сентября 2019

Вы должны упомянуть, заказ ASC ИЛИ DESC

orderBy('created_at', 'asc') Или orderBy('created_at', 'asc')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...