我正在使用file_get_contents()來檢索我存儲在.txt文件中的縣的列表。每個縣都有自己的路線。php - file_get_contents()或類似的函數
有沒有一種方法可以在每個條目周圍添加引號,然後在函數內部添加一個逗號?我的一個限制是它必須在函數內部填充,並且不能是兩個單獨的命令。
可以這樣做嗎?
或者我需要看看另一個功能呢?
我正在使用file_get_contents()來檢索我存儲在.txt文件中的縣的列表。每個縣都有自己的路線。php - file_get_contents()或類似的函數
有沒有一種方法可以在每個條目周圍添加引號,然後在函數內部添加一個逗號?我的一個限制是它必須在函數內部填充,並且不能是兩個單獨的命令。
可以這樣做嗎?
或者我需要看看另一個功能呢?
$countries = file('countries.txt'); // get country list into an array
$fixed_countries = array_map(function($v) { return '"' . trim($v) . '",'; }, $countries);
我繼續使用批處理腳本來重新填充我的列表,並用適當的引號和逗號重新導入文件到服務器,然後使用file()來填充數組,像一個魅力工作。謝謝 – Mechaflash
當然。
$countries = explode("\n",'"'.str_replace("\n","\",\n\"",file("countries.txt")));
這應該是這樣的轉換文件:
country1
country2
...
到像這樣的數組:
array('"country1",','"country2",',...).
這就是你想要的,對不對?
這樣做的結果是'array(0 =>'「Array')'因爲你正在將一個數組附加到一個字符串中。 – DaveRandom
你可以做到這一點很容易地,如果你使用的file
代替file_get_contents
它甚至更好:
$callback = create_function('$c', 'return "\"".trim($c)."\"";');
$countries = array_map($callback, file('countries.txt'));
return implode(', ', $countries);
我寫$callback
有語法是有效的PHP < 5.3;它也可以把它寫成匿名函數:
$callback = function($c) { return '"'.trim($c).'"'; };
Downvoter:請幫我改進這個答案,發表評論 – Jon
爲什麼你能不能用兩個函數? – 472084
'我有一個限制是它必須在函數內部填充 - 爲什麼?你想在這裏得到的最終結果是什麼 - 你是在寫CSV還是什麼? – DaveRandom
你是什麼意思兩個單獨的命令? – xdazz