array_push против $ str. = в PHP - PullRequest
0 голосов
/ 24 июня 2009

Какой из 2 имеет лучшую производительность?

В javascript я слышал, как Дуглас Крокфорд сказал, что вам не следует использовать str + =, если вы объединяете большую строку, а вместо этого используете array.push.

Я видел много кода, в котором разработчики используют $ str. = Для объединения большой строки в PHP, но, поскольку «все» в PHP основано на массивах (попробуйте сбросить объект), я думал, что То же правило применяется к PHP.

Кто-нибудь может это подтвердить?

Ответы [ 3 ]

5 голосов
/ 24 июня 2009

Строки являются изменяемыми в PHP, поэтому использование. = Не имеет такого же влияния на php, как использование + = в javascript.То есть вы не будете получать две разные строки каждый раз, когда используете оператор.

См .:

php Конкатенация строк, производительность Являются ли строки php неизменяемыми?

3 голосов
/ 24 июня 2009

.= для строк.

array_push() для массивов.

Они не одно и то же в PHP. Использование одного на другом приведет к ошибке.

1 голос
/ 24 июня 2009

array_push () не будет работать для добавления строки в PHP, потому что строки PHP на самом деле не являются массивами (как вы могли бы увидеть их в C или JavaScript).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...