Подтвердить что ты не робот

Php string cast vs strval function, которую я должен использовать?

В чем разница между выполнением строкового перевода и strval в php?

  • strval($value);

  • (string)$value;

4b9b3361

Ответ 2

Один вызов функции, другой - внутренний тип. Не проверив, я бы предположил, что последнее быстрее на несколько циклов, но не должно меняться.

Ответ 3

Они, как правило, взаимозаменяемы, поскольку PHP использует автоматическое преобразование типов, а тип переменной определяется контекстом, в котором используется переменная.

Некоторые различия заключаются в том, что strval ($ var) вернет строковое значение $var while (string) $var явно преобразует "тип" в $var во время оценки.

Кроме того, из руководства для strval() $var "может быть любой скалярный тип или объект, который реализует метод __toString. Вы не можете использовать strval() для массивов или объектов, которые не реализуют метод __toString."

Как упоминалось в @Lars (string), как правило, быстрее.