php форма c textarea и запись каждой строки в переменную
Не очень понимаю как привести код к виду где каждая новая строка их textarea будет записывать в новую переменную, или цикл что бы быть обработанной api.
Иметься код, формы:
<form action="2.php" method="post">
<textarea rows="10" cols="75" name="name" ></textarea>
<p><input type="submit" /></p>
</form>
Код обработчика:
<?php
include "API.php";
$api = new API();
$api->access_token = '236a054c';
$var = $_POST['name'];
$data = $api->getFilesInfo(["$var"]);
if (!array_key_exists('files', $data)) {
echo 'There is no files in response' . PHP_EOL;
}
foreach ($data['files'] as $file) {
echo '<pre>';
echo (array_key_exists('id', $file) ? $file['id'] : 'ID not found') . PHP_EOL;
echo '</pre>';
}
API отвечают так:
{
"status":"success",
"code":200,
"files": [
{
"id":"4632a04bb0d2b",
"name":"test",
}
}
]
Так вот, все мои варианты обрабатывали только первое значение, как обработать все значения которые будут написаны в тестовую форму с новой строки
Ответы (1 шт):
Автор решения: Егор Банин
→ Ссылка
В $_POST['name'] вам прилетит текст из textarea. Каждая новая строка в нём отделена от предыдущей символом (или несколькими) переноса строки.
Вам надо разбить текст по символу переноса строки и вы получите отдельные строки
<?php
$vals = preg_split('/\R/', $_POST['name']?? '', -1, PREG_SPLIT_NO_EMPTY);