在CSS里method是啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在CSS里method是啥意思相关的知识,希望对你有一定的参考价值。

不是CSS里的,这是form标签里面一个属性,作用是将表单中的数据传送给服务器进行处理 参考技术A HTML <form> 标签的 method 属性
1、定义和用法:
method 属性规定如何发送表单数据(表单数据发送到 action 属性所规定的页面)。
表单数据可以作为 URL 变量(method="get")或者 HTTP post (method="post")的方式来发送。
如:<form action="form_action.asp" method="get">
2、浏览器使用 method 属性设置的方法将表单中的数据传送给服务器进行处理。共有两种方法:POST 方法和 GET 方法。

如果采用 POST 方法,浏览器将会按照下面两步来发送数据。首先,浏览器将与 action 属性中指定的表单处理服务器建立联系,一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。

在服务器端,一旦 POST 样式的应用程序开始执行时,就应该从一个标志位置读取参数,而一旦读到参数,在应用程序能够使用这些表单值以前,必须对这些参数进行解码。用户特定的服务器会明确指定应用程序应该如何接受这些参数。

另一种情况是采用 GET 方法,这时浏览器会与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据:浏览器会将数据直接附在表单的 action URL 之后。这两者之间用问号进行分隔。

一般浏览器通过上述任何一种方法都可以传输表单信息,而有些服务器只接受其中一种方法提供的数据。可以在 <form> 标签的 method (方法)属性中指明表单处理服务器要用方法来处理数据,使 POST 还是 GET。本回答被提问者采纳

“return $this”是啥意思?

【中文标题】“return $this”是啥意思?【英文标题】:What does "return $this" mean?“return $this”是什么意思? 【发布时间】:2011-08-22 20:31:43 【问题描述】:

我试图理解这段代码,但当我到达最后一行时,我没有明白。 :(

我可以请你帮忙看看,return $this 是什么意思?

public function setOptions(array $options) 
    $methods = get_class_methods($this);
    foreach ($options as $key => $value) 
        $method = 'set' . ucfirst($key);
        if (in_array($method, $methods)) 
            $this->$method($value);
        
    

    //???? - return what ?
    return $this;

更新: 为了更清楚地说明,我删除了我的 cmets。

【问题讨论】:

[11072965][1] [1] 的可能副本:***.com/questions/11072965/… 这意味着很多朋友。 【参考方案1】:

这种编码方式称为fluent interfacereturn $this 返回当前对象,所以你可以这样写代码:

$object
  ->function1()
  ->function2()
  ->function3()
  ;

代替:

$object->function1();
$object->function2();
$object->function3();

【讨论】:

在 php 中,调用是否必须像这样在单独的行上?我经常在这样的一行中看到链式调用: $object->chop()->putInBowl()->bakeForTen();用PHP不行吗? 它们不需要,但我发现这种方式更具可读性 - 包括将分号单独放在一行中。 为了方便,我们可以在所有方法的末尾加上return $this 吗? 你需要考虑你的类的使用——如果你可能会在一个之后调用它的多个方法,那么使用方法链接会很方便。一个完美的例子是 Doctrine 的 Doctrine_Query 类。 我明白了,当我们执行 create()->from()->where()->leftJoin()... 每一个实际上都是方法。很不错。 :)【参考方案2】:

这将返回调用此方法的实例。这通常是为了实现fluent interfaces,所以你可以调用类似的东西:

CoolClass::factory('hello')->setOptions(array('coolness' => 5))->sayHello();

setOptionssayHello 将在同一个对象上调用。

【讨论】:

【参考方案3】:

$this 表示当前对象,即当前正在运行该方法的对象。通过返回$this,该方法正在工作的对象的引用被发送回调用函数。

所以任何人都在做

 $foo2 = $foo->SetOptions($bar);

$foo2 现在也指代 $foo。

【讨论】:

【参考方案4】:

你可以创建一个函数链

class My_class


        public function method1($param)
        
                /*
                 * logic here
                 */

                return $this;
        

        public function method2($param)
        
                /*
                 * logic here
                 */

                return $this;
        

        public function method3($param)
        
                /*
                 * logic here
                 */

                return $this;
        


所以你可以使用它

            My_class obj = new My_class();

            $return = obj->method1($param)->method2($param)->method3($param);

【讨论】:

【参考方案5】:

$this 将是包含该函数的类。

如果你这样称呼它:

$obj-&gt;setOptions($options)

它将返回 $obj,它已使用新选项进行设置。一般来说,当这样设置时,您不必捕获返回,因为它会影响对象本身,但它会产生它以便您可以内联使用它。

【讨论】:

我喜欢您的说明,即您不必捕获回报。这就是我一直在寻找的。​​span> "$this 将是类..." - 不是类。它是对象实例。【参考方案6】:

如果 SetOptions 方法是 ProgramOptions 类或其他东西的一部分,则 $this 将引用包含该方法的类,因此您将传回 ProgramOptions 的实例。

【讨论】:

【参考方案7】:

这是一种常见的 OOP 技术,称为 Fluent Interface。它的主要目的是帮助在不支持方法级联的语言(如 PHP)中链接多个方法调用。所以

返回 $this;

将返回该类的更新实例(对象),以便它可以在其范围内进行另一个调用。请参阅 PHP 中的示例,

class Class_Name 
    private field1;
    private field2;
    private field3;

    public function setField1($value)

        $this->field1 = $value;

        return $this; 
    

    public function setField2($value)

        $this->field2 = $value;

        return $this; 
    

    public function setField3($value)

        $this->field3 = $value;

        return $this; 
    
 

$object = new Class_Name();
$object->setField1($value1)->setField2($value2)->setField3($value3);

【讨论】:

以上是关于在CSS里method是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

HTML里name和ID各是啥意思?

css 中 first-child 是啥意思

Method<ClassName> 是啥意思?

NodeJS / Express 中的“module.exports”和“exports.methods”是啥意思?

CSS里<em></em> <strong></strong>是啥意思?

cProfile 中的“built-in method mainloop”是啥意思?