単語を配列に格納しています。フォームから新しい単語を追加するたびに、既存の配列に追加されます。
単語が値ではなく配列のキーに格納されていることを確認したいと思います。初めてarray_flipを使用して実行しますが、新しい単語を追加すると、それらは値として格納されます。
これは簡単だと思いますが、単語をキーとして格納するように配列が常に順序付けられていることを確認するにはどうすればよいですか?!前もって感謝します...
これが私のコードです:$_SESSION['words']
は既存の単語の配列であり、$_POST['additions']
追加される新しい着信単語です:
if (isset($_POST['additions']) === true) {
// do cleanup
$additions = explode(",", $_POST['additions']); // create array from $_POST['additions']
$additions = array_map('trim', $additions); // remove whitespace
$additions = array_filter($additions); // remove blank array elements
$additions = preg_replace("/,(?![^,]*,)/",'',$additions); // remove stray characters
foreach($additions as $key => $value) {
// append content to $_SESSION['words']
array_push($_SESSION['words'], $value);
}
// swap all the array values with the array keys
$_SESSION['words'] = array_flip($_SESSION['words']);
// swap keys with values
foreach($_SESSION['words'] as $key => $value) {
$key = $value;
$value = "";
}