哪位大侠可以告诉小弟我php中_call()的返回值是什么!
Jun 13, 2016 pm 01:44 PM
哪位大侠可以告诉我php中__call()的返回值是什么!~~
class my{
public $name = "我的类";
function __tostring(){
return $this -> name."是个空类"."
";
}
function __call($n, $v){
echo "不存在的方法:".$n."
";
echo "错误的值:",print_r($v)."
"; //最后面输出1,是怎么回事。
}
}
$p = new my();
echo $p;
$p -> no("第一",6,a);
下面是运行结果:我的类是个空类
不存在的方法:no
错误的值:Array ( [0] => 第一 [1] => 6 [2] => a ) 1
为什么最后面会出现个1呢???百思不得其解!~~
------解决方案--------------------
bool print_r ( mixed expression [, bool return] )
print_r的返回值
function __call($n, $v){
echo "不存在的方法:".$n."
";
print_r($v);
}
------解决方案--------------------
return 参数。若此参数设为 TRUE,print_r() 将不打印结果(此为默认动作),而是返回其输出
所以也可以这样
echo "错误的值:".print_r($v,true)."
"; //最后面输出1,是怎么回事。
------解决方案--------------------
你这个不是__call方法的问题,1是print_r的返回值
function __call($n, $v)
{
echo "不存在的方法:".$n."
";
echo "错误的值:";print_r($v); //最后面输出1,是怎么回事。
}
改成这样就不会输出1了。
你写成echo "错误的值:".print_r($v,true)."
"; 这样就会输出返回值
http://zhidao.baidu.com/question/256918769.html
http://cn2.php.net/print_r/

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Quelles sont les différences entre Huawei GT3 Pro et GT4 ?

Correctif : l'outil de capture ne fonctionne pas sous Windows 11

Cinq projets open source sélectionnés en langage Go pour vous emmener explorer le monde de la technologie

Go : les essentiels du développement linguistique : 5 recommandations de framework populaires

Comment réparer l'erreur Impossible de se connecter à l'App Store sur iPhone

Implémentation de la planification distribuée des tâches à l'aide du framework Web Echo de Golang
