|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Я объявляю массив в одной функции, а изменять его хочу в другой. Это возможно в пхп? Если да, то как? Вот в такой конструкции func2 получит свой экземпляр массива и его изменение не отразится на переменной $my_array , а как сделать что бы отразилось? Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
прим. Версия php 5.6 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 15:34 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
передать по ссылке Код: php 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 16:57 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
или функцию объявить подобным образом: Код: php 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 16:57 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Hett, Начиная с PHP 5.4.0 передача переменной по ссылке стала невозможна, поэтому использование этого приема приведет к фатальной ошибке. http://php.net/manual/ru/language.references.pass.php проверьте вашу версию php пожалуйста ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 17:04 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Hettпередать по ссылке Код: php 1.
Устарело много лет назад, до 5.3 актуально было. Hettили функцию объявить подобным образом: Код: php 1.
Ага, так, без "или" :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 17:21 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Да уж, отстал я от жизни. Все никак с 5.3 не слезем. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 17:22 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
u78Начиная с PHP 5.4.0 передача переменной по ссылке стала невозможна, поэтому использование этого приема приведет к фатальной ошибке. угадал все буквы, не смог прочитать слово. не передача невозможна, а & при вызове не нужен(он указан в определении функции) ЗЫ перевод кривой ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 17:46 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Изопропил, по умолчанию массивы передаются по значению, а не по ссылке, я специально проверил: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Выдаёт: Код: plaintext 1. 2. 3. 4.
как видите func2 меняет массив, но только у себя, а в родительской функции массив остаётся неизменным ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 18:30 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
u78, да он про то, что ты говоришь, что в PHP 5.4 нельзя передавать по ссылке. Но передавать то можно, только остался один способ. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 18:32 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
u78 Код: php 1. 2. 3. 4. 5.
и всего то ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 18:40 |
|
как работать с массивом в другой функции?
|
|||
---|---|---|---|
#18+
Hett, точно! надо параметр в функции соответственно объявлять Поменял объявление func2 вот так: Код: php 1.
Теперь полный код: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Стало вот так: Код: plaintext 1. 2. 3. 4.
Спасибо Hett, vkle_, Изопропил ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2017, 18:40 |
|
|
start [/forum/topic.php?fid=23&fpage=31&tid=1460568]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 302ms |
total: | 433ms |
0 / 0 |