所以我有一个方法可以根据你传入的属性数组创建一个文本元素,除了value属性之外它都有效,但问题如下:
如果有一些价值,无论是功能,文字还是你有什么" echo' d" out,然后值显示在框的旁边,如果返回值,那么我们得到标记内的值。
码
function textarea(array $attributes){
if(isset($attributes['name'])){
$this->name = 'name="'.$attributes['name'].'"';
}
if(isset($attributes['id'])){
$this->id = 'id="'.$attributes['id'].'"';
}
if(isset($attributes['class'])){
$this->class = 'class="'.$attributes['class'].'"';
}else{
$this->class = 'class="aisisTextElement"';
}
if(isset($attributes['rows'])){
$this->rows = 'rows="'.$attributes['rows'].'"';
}
if(isset($attributes['cols'])){
$this->cols = 'cols="'.$attributes['cols'].'"';
}
if(isset($attributes['value'])){
$this->value = $attributes['value'];
}
if(isset($attributes['style'])){
$this->style = 'style="'.$attributes['style'].'"';
}
$build_aisis_element = '<textarea '
.$this->id
.$this->class
.$this->name
.$this->rows
.$this->cols
.$this->style
.'>'.$this->value . '</textarea>';
echo $build_aisis_element;
}
例如:
如果此函数作为值传递:
function echo_me(){
echo "hello"
}
我的HTML看起来像:
hello
<textarea></textarea>
怎么样
function return_me(){
return "hello"
}
我的HTML是:
<textarea>hello</textarea>
为什么会这样?
答案 0 :(得分:5)
echo命令将字符串输出到文档,而不是调用函数。
返回获取字符串并将其传递回调用函数以执行它将会执行的操作。