6

看到其他语言如 Java 或 C++ String 是一个对象。
但是在 PHP 中是一样的吗?我应该写字符串还是字符串?
我知道这可能是一个奇怪的问题,但即使在 php.net 上我也找不到答案

非常感谢你。

4

7 回答 7

10

String不是 by 中的 ObjectPHP并且不需要Default强制转换,但如果您想使用scalar_objects 可以引入它

class StringHandler {

    public function length() {
        return strlen($this);
    }
}

register_primitive_type_handler('string', 'StringHandler');

这样你就可以轻松拥有

$str->length();
于 2013-03-28T16:23:50.737 回答
4

字符串不是ObjectPHP 中的。您不必在 PHP 中强制转换变量的类型。见 http://www.php.net/manual/language.types.string.phphttp://php.net/manual/language.types.type-juggling.php

于 2013-03-28T16:11:07.720 回答
2

String 不是 PHP 中的对象,它是一种原始类型。该信息位于http://php.net/manual/en/language.types.php

小写字符串对于您可能有的少数用途是正确的。

于 2013-03-28T16:12:22.620 回答
1

您可以在这里找到几乎所有与类型相关的内容:http: //php.net/manual/en/language.types.php

于 2013-03-28T16:11:56.557 回答
1

字符串不是对象..它是基本类型

于 2013-03-28T16:13:33.403 回答
1

字符串和对象是两个不同的东西。但是,如果您想运行自己的检查:

if (is_object($var))
{
 echo "Var is an object"; 
}
elseif (is_string($var))
{
 echo "var is a String"; 
}
else
{
  echo "var is neither an object or string"; 
}
于 2013-03-28T16:13:51.990 回答
0

Everyting 可以通过 PHP 的内置函数来实现,因此您可以使用 String 对象做所有您可以做的事情。

于 2013-03-28T16:13:27.613 回答