2009-10-27 3 views
0

Мне нужно изменить значение строки в массиве на заданную строку, затем взорвать и сохранить данные. Im используя приведенный ниже код.изменить значение строки в массиве

- строка таблицы.
target - это конкретная строка в массиве, которую я хочу обновить.
nfv - это новая строка, которую я хочу поместить в массив.

<? 
$rowpre = $_GET['row']; 
$newfieldvalue = $_GET['nfv']; 
$row = --$rowpre; 
$data = file_get_contents("temp.php"); 
$csvpre = explode("###", $data); 
$i = 0; 
    foreach ($csvpre AS $key => $value){ 
     $i++; 
     if($i = $row){ 
      $info = explode("%%", $value); 
      $j = 0; 
       foreach ($info as $key => $value){ 
        $j++; 
        if($j == $target){ 
         /*change the value of this line to $newfieldvalue*/ 
        } 
       } 
     }   
    } 

$presave = implode("%%", $info); 
$save = implode("###", $presave); 
$fh = fopen("temp.php", 'w') or die("can't open file"); 
fwrite($fh, $save); 
fclose($fh); 
?> 

ответ

2

Вы понимаете, что можете добавить индекс в массив? ? Если у вас уже есть числовой индекс элемента массива, просто идти вперед и изменить его:

$arr[$index] = "some new stuff"; 

Волшебно обновляется.

+0

поэтому после того, как я взорвался информация, я мог бы сделать $ info [$ target] = «новый материал»; ? – mrpatg

+0

Вы могли бы. * Iff * Я правильно понял ваш код. Это на самом деле не занимает высокое место на шкале «Скажи мне, что ты делаешь». – Joey