【问题标题】:What does this php construct mean: $html->redirect("URL")?这个 php 结构是什么意思:$html->redirect("URL")?
【发布时间】:2010-11-17 01:53:27
【问题描述】:

我在 php 的其他地方看到过这个“->”。我用来学习 PHP 的其中一本书中有这个,但从来没有解释过。它是做什么的,它是如何工作的!

我知道重定向位,但是 $html 变量和重定向函数发生了什么?

提前致谢!

【问题讨论】:

  • 请注意,您可能希望通过点击大复选标记来选择此问题的答案。
  • 嗨,Chacha,对不起,我不是在看这个答案:/刚收到一封电子邮件,里面有很多答案。感谢您的回答!

标签: php oop


【解决方案1】:

注意:如果您不知道“对象”是什么,那么下一段可能没有意义。我在末尾添加了链接以了解有关“对象”及其含义的更多信息

这将访问已分配给 HTML 的类中的方法。

class html
{
    function redirect($url)
    {
         // Do stuff
    }
    function foo()
    {
       echo "bar";
    }
}
$html = new html;
$html->redirect("URL");

当您创建一个类并将其分配给一个变量时,您可以使用“->”运算符来访问该类的方法。方法只是类中的函数。

基本上,“html”是一种对象。您可以在任何变量中创建新对象,然后使用该变量访问对象内部的内容。每次将 HTML 类分配给这样的变量时:

$html = new html;

你可以像这样访问它里面的任何函数

$html->redirect();
$html->foo(); // echos "bar"

要了解更多信息,您需要查找有关 PHP 中的面向对象编程的文章

先试试 PHP 手册:
http://us2.php.net/manual/en/language.oop.php
http://us2.php.net/oop

更多 StackOverflow 知识:
PHP Classes: when to use :: vs. ->?
https://stackoverflow.com/questions/tagged/oop
https://stackoverflow.com/questions/249835/book-recommendation-for-learning-good-php-oop
Why use PHP OOP over basic functions and when?
What are the benefits of OO programming? Will it help me write better code?

【讨论】:

  • 这是一个真正的面对面的时刻。可悲的是,在发布此答案之前我的声誉上限。
  • 仍然,+1;作为这个答案的第 10 次投票,这应该会给你一个(第二个?)“不错的答案徽章”;-)
  • 我已经厌倦了在徽章计数旁边看到“12”。至少现在我可以在一段时间内看到一个新号码。
  • 大声笑 ^^ 好吧,当心你对拥有 12 个青铜徽章的人的评价 :-p (而且大小并不重要 ;-))
【解决方案2】:

$html 是一个对象。重定向函数是属于这个对象的一个​​方法。我强烈建议您阅读PHP documentation on classes and objects 来解释这些概念。

【讨论】:

    【解决方案3】:

    除了Chacha102 said(这是对您所问问题中特定情况的解释)之外,您可能真的想看看 PHP 手册及其Classes and Objects (PHP 5)

    它会教你很多有用的东西:-)

    例如,您的问题肯定在The Basics 章节中有答案;-)

    【讨论】:

      【解决方案4】:

      $html 在您的情况下不是变量而是类。只是谷歌'PHP 类教程'。在这种情况下,redirect 是一个成员函数,它可能应该包含类似的代码:

      class html {
          function redirect($url) {
               echo '<META HTTP-EQUIV="refresh" CONTENT="0;URL='.$url.'">';
               exit;
          }
      }
      

      这将允许从您的 PHP 脚本中构造一个类,如下所示:

      $html = new html;
      

      您将可以称它为会员:

      $html->redirect("www.stackoverflow.com");
      

      【讨论】:

        【解决方案5】:

        $html 是变量,html 是类。

        $html = new html;
        

        在变量 $html 中放置一个具有类 html 的新对象。 否则,这是正确的。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-02-15
          • 2019-02-20
          • 1970-01-01
          • 2019-07-15
          • 2023-02-11
          • 2014-09-01
          • 2021-08-10
          相关资源
          最近更新 更多