欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP自动生成表单代码分享

程序员文章站 2024-02-02 14:12:40
...

在PHP开发过程中,我们有时候会遇到表单不固定的情况,需要在程序运行过程中动态生成,这里分享一个PHP自动创建表单的类给大家

Form.php

action=$action; $this->method=$method; } function form_start(){ $text="

action}\" method=\"{$this->method}\""; if($this->class!==""){ $text.=" class=\"{$this->class}\""; } if ($this->enctype!=="") { $text.=" enctype=\"{$this->enctype}\""; } if($this->id!==""){ $text.=" id=\"{$this->id}\""; } if($this->name!==""){ $text.=" name=\"{$this->name}\""; } $text.=">\n"; if($this->layout==true){ $text.="\n"; } return $text; } function form_end(){ if ($this->layout==true) { $text="\t
\n"; $text.="
\n"; }else { $text="\n"; } return $text; } //文本框函数 function form_text($name,$id,$label_name,$label_for,$value=""){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //密码框函数 function form_passwd($name,$id,$label_name,$label_for,$value=""){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //隐藏域函数 function form_hidden($name,$id,$label_name,$label_for,$value=""){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //文件域函数 function form_file($name,$id,$label_name,$label_for,$size=""){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //复选框函数 function form_checkbox($name,$label=array(),$label_name,$label_for=""){ $i=0; $text=array(); foreach ($label as $id=>$value){ $text[$i]=""; $text[$i].=""; $i++; } $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //单选框函数 function form_radio($name,$label=array(),$label_name,$label_for=""){ $i=0; $text=array(); foreach ($label as $id=>$value){ $text[$i]=""; $text[$i].=""; $i++; } $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //下拉菜单函数 function form_select($id,$name,$options=array(),$selected=false,$label_name,$label_for,$onchange=""){ if($onchange!==""){ $text="\n"; } foreach ($options as $value=>$key){ if($selected==$value){ $text.="\t\n"; }elseif ($selected===false) { $text.="\t\n"; } } $text.=""; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //多选列表函数 function form_selectmul($id,$name,$size,$options=array(),$label_name,$label_for){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //按钮函数 function form_button($id,$name,$type,$value,$onclick=""){ $text="\n"; if($this->layout==true){ $form_item="\n\t {$text}\n\n"; }else { $form_item=$text; } return $form_item; } //文本域函数 function form_textarea($id,$name,$cols,$rows,$label_name,$label_for,$value=""){ $text="\n"; $label=$this->form_label($label_name,$label_for); $form_item=$this->form_item($label,$text); return $form_item; } //文字标签函数 function form_label($text,$for){ if($for!==""){ $label=""; }else { $label=$text.":"; } return $label; } function form_item($form_label,$form_text){ switch ($this->layout){ case true: $text="\n"; $text.="\t"; $text.=$form_label; $text.="\n"; $text.="\t"; $text.=$form_text; $text.="\n"; $text.="\n"; break; case false: $text=$form_label; $text.=$form_text; break; } return $text; } function CreateForm($form_item=array()){ echo $this->form_start(); foreach ($form_item as $item){ echo $item; } echo $this->form_end(); } } ?>

使用示例:

相关标签: PHP自动生成表单