2015-03-22 2 views
-1

Я хочу прочитать значения одного массива с помощью php и сохранить их в соответствии с ключом. Если этот ключ не существует, необходимо создать новую запись.PHP Напишите новое значение массива ключом или создайте новую строку

Вот мой язык fileTo читать и писать:

$LNG['name'] = array(
    1 => 'test', 
    2 => 'test1', 
    3 => 'test2', 
    4 => 'test3', 
    5 => 'test4', 
); 

Здесь есть являются Пример

<?php 
$include("TECH.php"); 

$name = $LNG['name'][$_GET['id']]; 
?> 
<html> 
<head> 
    <title>Editpage</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
</head> 
<body> 
<form action="<?= $_SERVER['PHP_SELF'] ?>" method="POST"> 
    <table> 
<tr> 
    <td>Name</td><td><input name="name" type="text" value="{$name}"/></td> 
</tr>  
</table> 
    <p><input type="submit" name="submit" value="Save"></p> 
</form> 
</body> 
</html> 

и представить значение изменения из выбранного ключа

Пример Ключ 1 путем ввода значения изменения из ключа 1 в

$LNG['name'] = array(
    1 => 'i am edited', 
    2 => 'test1', 
    3 => 'test2', 
    4 => 'test3', 
    5 => 'test4', 
); 

Для экономии я испытал с этим

$file = 'TECH.php'; 
// The new person to add to the file 
$saveedit = $LNG['tech'][$_GET['id']] = $_POST['name_ger']; 
// Write the contents to the file, 
file_put_contents($file, $saveedit, FILE_APPEND | LOCK_EX); 

и это не добавит редактировать имя ничего ему добавить новую запись

$LNG['name'] = array(
    1 => 'test', 
    2 => 'test1', 
    3 => 'test2', 
    4 => 'test3', 
    5 => 'test4', 
);editvalue 
+3

Где вы хотите сохранить значения массива? Я действительно не понимаю, что вы хотите, пожалуйста, будьте более конкретными (Wo willst du die array elemente speichern? Ich verstehe/sehe nicht ganz was dein Ziel ist!) – Rizier123

+0

Я хочу изменить индивидуальные значения php, и если это недоступно для добавления нового –

+1

. Все еще не получите то, что вы просите .... – Eda190

ответ

0

Так что вы хотите хранить данные в файл, в массиве, PHP может «читать», просто включив файл?

Затем, чтобы изменить эти данные, вы можете просто включить этот файл, так что структура/структура данных $LNG['name'] присутствует в вашем скрипте, который обрабатывает представленную форму.

Чтобы изменить значения, вы просто переписать их:

$LNG['name'][$idfromform] = $valuefromform; 

Не нужно проверить, существует ли ключ или нет, PHP создаст его автоматически, если он не делает.

И затем, чтобы получить измененную структуру данных, записанную обратно в файл, вы просто используете var_export и file_put_contents.

Возможно, вам захочется подумать о том, чтобы ограничить, какие ключи могут быть созданы в массиве каким-то образом. И защищайте эту форму от использования любым пользователем вашего сайта, иначе вы рискуете получить нежелательные побочные эффекты или даже можете создать дыру в безопасности. Но это во многом зависит от того, что вы будете делать с структурой данных впоследствии.

+0

есть у вас пример для сохранения –

+0

В руководстве для обеих функций есть примеры того, как они работают. Сначала попробуйте что-нибудь. – CBroe

+0

Это проблема, которую я пробовал много, просто ничего не работает, какая боль, что я уже пробовал, которая хранила данные, но также всегда ставила старый контент и перезаписывала старое значение не –

Смежные вопросы