我想弄清楚如何将 html textarea 转换为 php 数组,
我使用带有 POST 的表单将查询传递给 php 脚本, 并且 php 文件通过以下行获取它们:
$ids = array($_POST['ids']);
不用说,它把所有东西都放在一行中
Array ( [0] => line1 line2 line3 line4 )
我需要最终结果来替换它:
$numbers = array(
"line1",
"line2",
"line3",
"line4"
);
划分和重新解析它的最佳方法是什么?
最佳答案
在 \n
上使用爆炸是获取新行的正确方法。请记住,尽管在某些平台上,行尾实际上是由 \r\n
发送的,因此仅在 \n
上爆炸可能会在末尾留下额外的数据每行。
我的建议是在展开之前删除 \r
,这样您就不必遍历整个数组来修剪结果。作为最后的改进,您不知道实际上有一个 $_POST['ids']
,所以总是先检查它。
<?
$input = isset($_POST['ids'])?$_POST['ids']:"";
//I dont check for empty() incase your app allows a 0 as ID.
if (strlen($input)==0) {
echo 'no input';
exit;
}
$ids = explode("\n", str_replace("\r", "", $input));
?>
关于php - TextArea 到 PHP 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16518434/