Hallo,
ich habe ein kleines Problem.
Ich wollte in einem Modul SetBuffer überlagern
public function SetBuffer($name, $data)
{
$this->SendDebug(__FUNCTION__, 'name=' . $name . ', size=' . strlen($data) . ', data=' . $data, 0);
parent::SetBuffer($name, $data);
}
das wird - richtigerweise - angemeckert
24.05.2018 21:45:33 | PHPLibrary | Parameter name in function BMW_SetBuffer has no type hint. Please use either 'bool', 'int', 'float' or 'string'.
24.05.2018 21:45:33 | PHPLibrary | Parameter data in function BMW_SetBuffer has no type hint. Please use either 'bool', 'int', 'float' or 'string'.
dann ändere ich das in
public function SetBuffer(string $name, string $data)
und dann meldet IPS das:
24.05.2018 21:45:22 | BMWConnectedDrive | <br />
<b>Strict Standards</b>: Declaration of BMWConnectedDrive::SetBuffer() should be compatible with IPSModule::SetBuffer($Name, $Data) in <b>/var/lib/symcon/modules/IPSymconBMWConnectedDrive/BMW/module.php</b> on line <b>1827</b><br />
in der Dokumentation steht das auch mit beiden Argumenten als ‚string‘
wo ist da mein Fehler?
danke