cómo insertar valor en una ubicación particular en un archivo csv usando php

¿Es posible escribir en una ubicación particular en un archivo CSV usando PHP?

No quiero agregar datos al final del archivo CSV. Pero quiero agregar datos al final de una fila que ya tienen valores en el CSV.

gracias por adelantado

Hay que ir Código de trabajo completo:

 

No, no es posible insertar nuevos datos en medio de un archivo, debido a la naturaleza del sistema de archivos.
Solo añadir al final es posible.

Por lo tanto, la única solución es crear otro archivo, escribir una parte inicial de la fuente, agregar un nuevo valor y luego agregar el rest del archivo fuente. Y finalmente renombrar un archivo resultante a nombre original.

Técnicamente, la respuesta del Coronel Shrapnel es absolutamente correcta.

Su problema es que no desea tratar todas estas operaciones de archivos solo para cambiar algunos datos. Estoy de acuerdo contigo. Pero estás buscando la solución en un nivel equivocado. Pon este problema en un nivel más alto. Cree un modelo que represente una entidad en su base de datos CSV. Modifique el estado del modelo y llame a su método save() . El método debe ser responsable de escribir el estado de su modelo en formato CSV.

Sin embargo, puede usar una biblioteca CSV que resum operaciones de bajo nivel para usted. Por ejemplo, parsecsv-for-php le permite apuntar a una celda específica:

 $csv = new parseCSV(); $csv->sort_by = 'id'; $csv->parse('data.csv'); # "4" is the value of the "id" column of the CSV row $csv->data[4]['firstname'] = 'John'; $csv->save();