【问题标题】:how can we assign input type in to an variable我们如何将输入类型分配给变量
【发布时间】:2017-09-25 09:36:25
【问题描述】:

在这里我有一个疑问,我知道它看起来与你们无关,但我需要得到它。问题是我们可以将输入类型分配给这样的变量吗?

<?php  $option  = '<input type="text" name="project_id" id="pr_id"/>';
var_dump($option);?>

这里pr_id 包含一个值和将其分配给变量的想法

【问题讨论】:

  • 我不确定我知道你在问什么。你能再解释一下或举一些例子吗?
  • php在服务器端执行,所以需要使用POST请求将输入的值发送给php。
  • 您所做的是声明一个看起来像一些 HTML 标记的字符串。就其本身而言,这没有任何作用。您是否打算在某个时候将其回显到屏幕上?您是否在询问如何在将用户呈现到页面后捕获用户在文本框中输入的内容?如果是这样,那么请学习使用 HTML 表单和 PHP 将数据发送回服务器的介绍性教程。一个好的将解释所有的关键概念。请记住,您的 PHP 需要执行两次 - 一次将 HTML 表单发送到客户端,然后再次接收包含表单数据的响应并进行处理。
  • 你到底想要什么?目前,您将 HTML 元素设置为变量的字符串。您想保留对输入的引用以便读取它的值吗?你想用某个变量替换pr_id吗?
  • @Stefan 我知道,但是任何其他将id="pr_id" 值传递给变量的方式

标签: php input


【解决方案1】:

当然,你可以分配任何东西!这是我刚刚创建的 Input 对象,看看这个:

<?php

class Input
{
    /** @var array $attributes */
    private $attributes = [];

    /**
     * @param $key
     * @return mixed|string
     */
    public function getAttribute($key)
    {
        return isset($this->attributes[$key]) ? $this->attributes[$key] : null;
    }

    /**
     * @param $key
     * @param $value
     * @return $this
     */
    public function setAttribute($key, $value)
    {
        $this->attributes[$key] = $value;
        return $this;
    }

    /**
     * @param array $attributes
     * @return $this
     */
    public function setAttributes(array $attributes)
    {
        $this->attributes = $attributes;
        return $this;
    }

    /**
     * @return array
     */
    public function getAttributes()
    {
        return $this->attributes;
    }

    public function render()
    {
        $html =  '<input ';
        foreach ($this->getAttributes() as $key => $val) {
            $html .= $key.'="'.$val.'" ';
        }
        $html .= '/>';
        return $html;
    }
}

所以您现在可以使用以下代码生成输入:

$input = new Input();
$input->setAttribute('id', 'pr_id')
      ->setAttribute('name', 'project_id')
      ->setAttribute('type', 'text');

echo $input->render();

哪些输出:

&lt;input id="pr_id" name="project_id" type="text" /&gt;

在这里玩一下:https://3v4l.org/sAiWd

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-07
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多