У меня есть проблема, чтобы получить значения из одного массива квадратных скобок. Получать это
//$_POST["values"] == ["val1","val2","val3"]
$val = $_POST["values"];
Я хочу что-то вроде:
foreach( $val as $value ) {
$valget = $value;
//need to get all values like $valget = "val1";
}
Большое спасибо!
ОБНОВИТЬ:
Что я пытаюсь получить?
Значения передаются как $ _POST из файлового менеджера
Как я хочу продолжить?
Я хочу, чтобы каждый результат записи сохранялся в базе данных.
И все же сохраняя все как массив в базу данных в одну строку, мне нужно для каждой записи новую строку.
Итак, это ваш вар со всеми $_POST
ценности :
$val = $_POST["values"];
Это то что ты делаешь :
foreach($val as $value) {
$valget = $value;
}
Так каждый раз $valget
будет стерто к следующему $value
// First loop : $valget == "val1"// Second loop : $valget == "val2"// Third loop : $valget == "val3"
Так что в конце концов, если вы делаете echo $valget;
у вас будет последний результат: $valget == "val3"
Если вы хотите получить каждый, вот какое-то решение:
1 / Эхо каждого значения:
foreach($val as $value) {
echo $value . "<br>";
}
Таким образом, вы будете выводить
val1
val2
val3
2 / Ничего не делать с тех пор $val
это уже массив со всеми значениями:
$val = $_POST["values"];
$val = array(
0 => "val1",
1 => "val2",
2 => "val3");
Таким образом, вы можете получить доступ к каждому значению с помощью:
$val[0] == "val1";
$val[1] == "val2";
$val[2] == "val3";
3 / Измените ключ, если вы хотите найти их другим способом:
// New array
$valget = array();
// Create a new index
$index = 1;
foreach($val as $value) {
$valget[$index] = $value;
$index++;
}
Таким образом, вы будете иметь:
$valget[1] == "val1";
$valget[2] == "val2";
$valget[3] == "val3";
Хорошо понял!
Теперь я хочу поделиться с миром ответом, потому что может быть кто-то еще столкнется с той же проблемой, что и я.
После всего, что я пробовал, только работа была:
$numbers = json_decode($_POST['file_img']); //post images from <form> and decode array
foreach($numbers as $index => &$number){
++$number; # we are incrementing the original value
echo 'Inside of the array = ', $index, ': ', $number, '<br />'; # this is showing the original value
so now $number = "every single image";
Now save to db or whatever..
}
Этот ответ был найден здесь: https://stackoverflow.com/a/47266239/4928816
Так что если кому-то понадобится передать переменные из автономного responseivefilemanager в PHP так, как мне нужно (http://www.responsivefilemanager.com/demo.php), вы можете использовать этот код для этого.
Спасибо всем, кто пытался мне помочь!