我有一个名为Api的模型。
我正从shell脚本中访问。
正在运行的我的shell脚本函数:
public function verifyTransactions(){
$result =$this->out($this->Api->verifyNumber());
$this->out(var_dump($result));
}
此输出]
int(2)
以下是Api模型中的功能:
public function verifyNumber(){
return null;
}
我试过将return null变为return false(boolean),返回一个像“jibberish”这样的字符串
但是当我打印出来时,我得到的类型为int,其中包含不同的数字,如对象引用或其他内容。
我确信我已经看过一些非常简单的东西了,如果有人能指出那会很棒的话;)
由于
编辑:
啊,错误是我有$ this->在那里两次
答案 0 :(得分:1)
Shell::out()
返回写入的字节数或false
出错,所以我不确定为什么你会期望它返回别的东西。
参见 http://api.cakephp.org/2.4/class-Shell.html#_out
如果您需要重用Api::verifyNumber()
的返回值,那么您应该先将其直接存储在变量中。
public function verifyTransactions(){
$result = $this->Api->verifyNumber();
$this->out($result);
// ...
}
答案 1 :(得分:1)
如果您不打算输出返回的(null)值并且只想将其用于比较,为什么不避免使用$ this-> out allgether?
保持你的Api方法完全相同,而且verifyTransaction方法可以简单地......
public function verifyTransactions(){
var_dump($this->Api->verifyNumber());
}
或.. ..
public function verifyTransactions(){
if(is_null($this->Api->verifyNumber()){
//do null stuff. Could even use the out method you have been trying to avoid...
$this->out('got null back from Api');
}
}
目前您正在使用$ this-> out帮助器设置变量... $ this-> out用于处理可读输出,从不用于设置变量...不要...
$result =$this->out($this->Api->verifyNumber());
只是......
$result = $this->Api->verifyNumber();