所以我遇到了我见过的最奇怪的问题。
所以,有些背景,我有一个包含交易,有需求,有需要和想要交易的用户的类。我也有一个print方法,它以(Want | have1,have2等等)的形式显示它,但当我内爆hass数组时,它会覆盖它。
以下是一个例子:
array(5) {
[0]=>
" string(14) "Draconnection
[1]=>
" string(19) "Cyber Angel Idaten
[2]=>
" string(12) "Hitodenchak
[3]=>
" string(13) "Bujingi Warg
[4]=>
" string(10) "Rai Rider
}
-Rai RiderargIdaten
这是我的班级代码
class trade{
protected $have;
protected $want;
protected $user;
function __construct($want,$have){
if (is_array($have)){
$this->have = $have; // have is an array of strings
}else{
$this->have = [$have];
}
$this->want = $want;
}
function getHave(){
return $this->have;
}
function getWant(){
return $this->want;
}
function __toString(){
// return "(".$this->want." | ".implode(",", $this->have).")\r\n";
// var_dump($this);
$out=implode("-",$this->have);
var_dump($this->have);
return $out;
}
}
感谢您的帮助
答案 0 :(得分:0)
在所有这些字符串的末尾都有流氓元字符,可能只有\r
个。字符串数据就在那里,但是打印它的东西不断获得一个命令,在打印更多数据之前返回到行的开头。
如果你有一个shell方便的运行php yourscript.php | hexdump -C
来查看0d
未跟0a
后面的原始输出是\r
,那么\n
后面没有class C:
def __init__ (self):
self.aTime = 2
async def g (self, waw, asio):
print ('g0')
await waw (self.aTime, asio)
print ('g1')
1}}。