文字列型制約の問題

WBOY
リリース: 2016-06-23 13:28:48
オリジナル
1041 人が閲覧しました

function foo(string $s) { 	  echo $s;}foo("hello world");
ログイン後にコピー

キャッチ可能な致命的なエラー: foo() に渡される引数 1 は、指定された文字列が呼び出された文字列のインスタンスである必要があります
これはなぜですか?どのように書けばよいでしょうか?


ディスカッションへの返信 (解決策)

型制約は、実際には一歩後退しています

型制約は、オブジェクトと配列の 2 つの型のみをサポートします。整数型と文字列型はサポートされていません。

PHP は弱い型であり、通常、オブジェクトと配列をサポートします。

settings.php

;false


AddressManager.php
private $addresses = array("209.131.36.159","74.125.19.106");
foreach ($this- >addresses as $address){
if(!is_bool($resolve)){
die("outputAdresses() にはブール引数が必要ですn");印刷する}
$settings = simplexml_load_file("設定. xml");
$manager = new AddressManager();
$manager->outputAddresses((string)$settings->resolvedomains);
ただし、ここでは $manager->outputAddresses((string)$ の型制約ですsettings->resolvedomains); は OK です


わかりました、ありがとう

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート