Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передача массива в фунуцию 
:(
    Опции темы
Wolf1994
Дата 28.11.2004, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 7
Всего: 29



Как можно передать массив переменных в функцию - array []? Пробовал указывать как array - не сработало, добавил скобки [] - в определении функции это привело к ошибке. Возможно, я допустил ошибку в программе и можно указывать просто array?
PM MAIL WWW   Вверх
Opik
Дата 28.11.2004, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Код

$newarray = array('first', 'second');

Гениальне smile
Добавлено @ 21:15
А если это надо в функцию передать, то:
Код

funcName($newarray);
function funcName($arr){
  print_r($arr);
}

PM MAIL Skype   Вверх
IZ@TOP
Дата 29.11.2004, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Opr, лучше всеже наверное заранее определять функции. В РНР5 например с классами такая фича не проходит. Может и с функциями также получиться. Я долго голову ломал когда IPB ставил на сервак с 5м PHP, потом понял в чем проблема.
Добавлено @ 00:18
Wolf1994, в следующий раз поджалуйста кусочек кода выложить незабудь smile


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Opik
Дата 29.11.2004, 01:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



IZ@TOP
Я хотел запостить выше, да просто думал иначе, сначала я хотел отдельным блоком показать, как вызвать функцию, и далее саму функцию =))) а вышло наоборот =)
PM MAIL Skype   Вверх
Wolf1994
Дата 30.11.2004, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 7
Всего: 29



то есть, это сработает:

$array [1]="x";
$array [2]="y";

process_array ($array);

function process_array ($array)
{
//some actions
return $array;
}

smile
PM MAIL WWW   Вверх
Opik
Дата 30.11.2004, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



А проверить? smile)) Будет, только лучше так:
Код
function process_array ($array)
{
//some actions
return $array;
}

$array [1]="x";
$array [2]="y";

process_array ($array);



PM MAIL Skype   Вверх
Wolf1994
Дата 1.12.2004, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 7
Всего: 29



Проверил - не работает:
Код


global $array;

function process_array ($array)
{
$array [1]="z";
return $array;
}

$array [1]="x";

process_array ($array);

print $array [1];



объявил array как global, и всё равно, возвращается "x", а не "z" smile
PM MAIL WWW   Вверх
Opik
Дата 1.12.2004, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



Цитата
global $array;

global объявляется внутри функции
и с чего ты взял, что тут что то влияет на результат?
...
Цитата
$array [1]="x";

...

print $array [1];

и каким чудом выведет z?
попробуй так:

Код

function process_array ($array)
{

return var_dump($array);
}

$array [1]="x";
$array [2]="z";

$hm = process_array ($array);

print $hm;

PM MAIL Skype   Вверх
penizillin
Дата 1.12.2004, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



Wolf1994 основы...

global можно убрать.

process_array ($array); куда выводится? в эфир?
Код
$array = process_array ($array);


или
Код
function process_array (&$array)
{
$array [1]="z";
return true;
}

$array [1]="x";

process_array ($array);

print $array [1];

PM MAIL ICQ   Вверх
Opik
Дата 1.12.2004, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Vingrad developer
Сообщений: 1918
Регистрация: 6.10.2004
Где: Рига

Репутация: 24
Всего: 55



penizillin
если не ошибаюсь, можно ещё сделать подобное, через
static $array;?
PM MAIL Skype   Вверх
penizillin
Дата 1.12.2004, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



думаю, что ошибаетесь.
PM MAIL ICQ   Вверх
Wolf1994
Дата 4.12.2004, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 7
Всего: 29



спасибо. С амперсендом в определении функции всё заработало!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.