PHP использует систему копирования на модификацию.
Есть ли $a = (string) $a;
($ a - уже строка), чтобы изменить и скопировать что-нибудь?
В частности, это моя проблема:
Параметр 1 - mixed
/Я хочу разрешить передавать не строки и преобразовывать их в строки.
Но иногда эти строки очень большие. Поэтому я хочу опустить копирование параметра, который уже является строкой.
Можно ли использовать версию Foo
или мне нужно использовать версию Bar
?
class Foo {
private $_foo;
public function __construct($foo) {
$this->_foo = (string) $foo;
}
}
class Bar {
private $_bar;
public function __construct($bar) {
if (is_string($bar)) {
$this->_bar = $bar;
} else {
$this->_bar = (string) $bar;
}
}
}