【问题标题】:In what scenario would one need to use PHPs magic function toString()在什么情况下需要使用 PHP 的魔术函数 toString()
【发布时间】:2010-03-25 17:54:58
【问题描述】:

为什么程序员需要使用这个函数?在 php 4 中如何实现相同的结果?

【问题讨论】:

标签: php string class tostring


【解决方案1】:

在您想要控制对象在字符串上下文(用作字符串)中使用时的行为方式的任何场景中,例如

class FullName
{
    protected $firstName;
    protected $middleNames = array();
    protected $lastName;

    // ... methods ...

    public function __toString()
    {
        return sprintf('%s %s %s', $this->firstName,
                                   implode(' ', $this->middleNames),
                                   $this->lastName);
    }
}

$fullname = new FullName('John', array('Jim', 'Jamie'), 'Jackson');
echo "Hello, my name is $fullname";

您无法在 PHP4 中模拟此方法。事实上,你根本不应该再使用 PHP4。

【讨论】:

  • 哇,太好了,我今天学到了一些东西! (p.s. 有时候我们还是别无选择,只能使用 php4)
【解决方案2】:

请参阅this question。如果它可用,它比强制转换更可取。

【讨论】:

    猜你喜欢
    • 2015-09-13
    • 1970-01-01
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 1970-01-01
    • 2014-08-03
    相关资源
    最近更新 更多