第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

通過(guò) PHP 數(shù)組對(duì) CSV 數(shù)據(jù)進(jìn)行排序

通過(guò) PHP 數(shù)組對(duì) CSV 數(shù)據(jù)進(jìn)行排序

PHP
滄海一幻覺(jué) 2022-11-12 13:23:33
我正在嘗試從 .CSV 獲取數(shù)據(jù),將其排序?yàn)閿?shù)組(使用 PHP),在其中選擇特定值,從該選擇中創(chuàng)建一個(gè)新數(shù)組并將其編碼為可與 ajax 一起使用的 json 對(duì)象。有了這段代碼,我?guī)缀蹩梢缘玫轿蚁胍摹?CSV_url = '../fichier-csv/commande.csv';                 // CSV file $csv["data"] = array_map('str_getcsv', file($CSV_url));   // to PHP arrayarray_shift($csv["data"]);                                // remove first line (headers)$jsonData = json_encode($csv);                            // to JsonCSV 文件每行包含大約 16 個(gè)類(lèi)別的數(shù)據(jù),但我在最終的 json 中只需要其中的 4 個(gè)。我堅(jiān)持這個(gè)結(jié)果。如果我在 json_encode ( $csv) 之前打印,我會(huì)得到一個(gè)很好的數(shù)組,但是我很難選擇想要的數(shù)據(jù)并用它制作新數(shù)組(這是我認(rèn)為應(yīng)該這樣做的方式,但我是初學(xué)者,也許有一種更簡(jiǎn)單的方法可以做到這一點(diǎn))。輸出的 Json 也應(yīng)該按照每個(gè)數(shù)組的 [0] 值的升序排序。這是我得到的數(shù)組的開(kāi)始(其中 378 個(gè)要處理):Array (    [data] => Array        (            [0] => Array                (                    [0] => 100120148                    [1] => 1.0000                    [2] => 7.4200                    [3] => 2.4700                    [4] => 4.9100                    [5] => 0.0000                    [6] => 14.8000                    [7] => 0.3000                    [8] => marie                    [9] => jardin                    [10] => 40 rue mazé                    [11] => 87400                    [12] => 066825197                    [13] => magicayllo64@hotmail.fr                    [14] => 1                    [15] => magicayllo64@hotmail.fr                )            [1] => Array                (                    [0] => 100120162                    [1] => 1.0000                    [2] => 45.7500                    [3] => 10.8000                    [4] => 8.2500                    [5] => 0.0000                    [6] => 64.8000                    [7] => 2.0000                    [8] => __                    [9] => Lucien fizon                    [10] => 56 impasse pazarre                    [11] => 25000                    [12] => 0649851473                    [13] => 144f21ds8u4u6f5f@shopify.com                    [14] => 4                    [15] => 144f21ds8u4u6f5f@shopify.com                )如何獲取每個(gè)子數(shù)組的值 0、8、9 和 12 并用它創(chuàng)建一個(gè)新數(shù)組,以便我可以將這個(gè)所需的數(shù)組編碼為 Json ?
查看完整描述

2 回答

?
慕容森

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超18個(gè)贊

在您讀取文件時(shí)處理它可能會(huì)更好,使用fopen()并且fgetcsv()您可以只提取您想要的項(xiàng)目到結(jié)果而不是全部存儲(chǔ)。


$CSV_url = '../fichier-csv/commande.csv';

$fh = fopen($CSV_url, "r");

$csv = [ "data" => [] ];

fgets($fh);             // Ignore header

while ( $row = fgetcsv($fh) )   {

    $csv["data"][] = [$row[0], $row[8], $row[9], $row[12]];

}

fclose($fh);

$jsonData = json_encode($csv);


查看完整回答
反對(duì) 回復(fù) 2022-11-12
?
忽然笑

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊

您可以array_map再次使用以?xún)H選擇每行中所需的列:


$csv["data"] = array_map(fn($row) => [$row[0], $row[8], $row[9], $row[12]], $csv["data"]);

如果您還沒(méi)有使用 PHP 7.4,則需要使用傳統(tǒng)語(yǔ)法而不是箭頭函數(shù):


$csv["data"] = array_map(function(row) {

    return [$row[0], $row[8], $row[9], $row[12]];

}, $csv["data"];



查看完整回答
反對(duì) 回復(fù) 2022-11-12
  • 2 回答
  • 0 關(guān)注
  • 122 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)