表单换行转数组案例时常会用到,在此记录下
已知前端代码
<div class="layui-form-item layui-form-text fields-item"> <label class="layui-form-label">表字段</label> <div class="layui-input-block"> <textarea name="fields" class="layui-textarea" placeholder="字段名称|字段英文名(一行一个字段)" rows="8"></textarea> <tip style="color: red;">新增查询表的所有字段,一行一个字段,格式:字段名称|字段英文名.必须每行保证字段名称和英文名称唯一,英文名称可不填写将通过字段名称转拼音生成表字段,填写了表字段内容则无需上传查询模板了</tip> </div> </div>
后台处理代码参考
$fields=[];
if(!empty($params['fields'])){
$fieldsArr = array_filter(explode("\n", str_replace("\r\n", "\n", $params['fields'])));
foreach ($fieldsArr as $index => $item) {
$itemArr = array_filter(explode('|', $item));
if (trim($itemArr[0] ?? '') === '') {
continue;
}
$field=[];
// 字段名称|字段英文名
$field['comment']= $itemArr[0];
$field['name'] = $itemArr[1] ?? \fhx\Pinyin::result($field['comment']);
$field['width']=60;
$fields[]=$field;
}
}相关文章