我需要將我的 base64 CSV 字串轉換為我采用 $line[0]、$line 1等的行。
// my file uploaded
"filestream": "Q29kaWNlIEV2ZW50b3xJRCBQYXJ0ZWNpcGFudGV8VGlwbyBwYXJ0ZWNpcGFudGV8Tm9tZSBwYXJ0ZWNpcGFudGV8Q29nbm9tZSBwYXJ0ZWNpcGFudGV8Q29kaWNlIGZpc2NhbGV8UVIgQ29kZXxTdGF0byBDaGVjay1pbnxOb3RlIENoZWNrIGlufFVzZXIgY2hlY2staW4KVGltZXN0YW1wIGNoZWNrLWlufFRpbWVzdGFtcCBlc3BvcnRhemlvbmUKNDIxfDEyMjA1fE9zcGl0ZSBkaSBzZWRlfFNhYnJpbmF8UnV6emF8UlpaU1JOODBBMDFHMjI0SHwwMDQyMTVMTk41MDAwMTIyMDV8UHJlc2VudGV8fEV4dC5Qcm92aWRlcnwyMC8wMS8yMDIyIDAxOjE3OjU0fHwKNDIxfDEyODk1fEFnZW50ZXxSaWNjYXJkb3xCb2dvZ25hfHwwMDQyMXRBR2w0MDAwMTI4OTV8QXNzZW50ZXxOb24gcHJlc2VudGUgYWxsJ2V2ZW50b3x8fHwKCgo="
我從以下方面回饋: $csvFile = str_getcsv($request->json('filestream'), '|');
結果
預期的結果是:陣列(陣列(行),陣列(行2),陣列(行3))
uj5u.com熱心網友回復:
str_getcsv()需要一行,因此您必須對原始字串進行 base64 解碼,然后通過換行符將其拆分以獲得多行,然后遍歷那些str_getcsv()以獲取每行的陣列。像這樣的東西:
$array = [];
foreach (explode("\n", base64_decode($string)) as $line) {
$array[] = str_getcsv($line, '|');
}
print_r($array);
如果這些不重要,您可以添加一些額外的檢查以跳過輸入中的空白行。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/420987.html
標籤:
