string 类型约束的问题

历努 2015-08-11 10:51:33

function foo(string $s) {
echo $s;
}
foo("hello world");

报错Catchable fatal error: Argument 1 passed to foo() must be an instance of string, string given, called in
这是为什么?应该怎么写呢?
...全文
113 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
历努 2015-08-12
  • 打赏
  • 举报
回复
好吧,非常
谢谢
历努 2015-08-12
  • 打赏
  • 举报
回复
settings.php
<settings>
<resolvedomains>false</resolvedomains>
</settings>
AddressManager.php
class AddressManager{
private $addresses = array("209.131.36.159","74.125.19.106");

function outputAddresses($resolve){
foreach($this->addresses as $address){
if(!is_bool($resolve)){
die("outputAdresses() requires a Boolean argument\n");
}
print "</br>";
}
}
}
$settings = simplexml_load_file("settings.xml");
$manager = new AddressManager();
$manager->outputAddresses((string)$settings->resolvedomains);
但是这里$manager->outputAddresses((string)$settings->resolvedomains);的类型约束是可以的
一起混吧 2015-08-12
  • 打赏
  • 举报
回复
php 函数声明参数不需要指定类型
码无边 2015-08-12
  • 打赏
  • 举报
回复
php是弱类型 对简单的类型是不支持的,一般就支持对象和数组
xuzuning 2015-08-12
  • 打赏
  • 举报
回复
类型约束实际是一种倒退 类型约束只支持对象 和 数组两种类型。而不支持整型 和 字符串类型。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧