Перейти к содержимому

Реферальная программа Мегаплана

Партнерская программа Kredov

Массив array

#1 Banderas

Banderas
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1
0

Отправлено 28 Февраль 2009 - 18:48

По коду все понятно... Вот сам код:
<?
$A = array 

(

"Ivanov" =
array ("name" => "Иванов", "sex" => "M", "email" => "ivan@ya.ru"),

"Pterov" = 
array ("name" => "Петров", "sex" => "M", "email" => "peta@ya.ru"),

"Sidorova" = 
array ("name" => "Сидорова", "sex" => "F", "email" => "sid@ya.ru")

);

echo $A ["Ivanov"]["sex"];
?>

ОШИБКА:

Parse error: syntax error, unexpected '=', expecting ')' in Z:\home\localhost\www\admin\array.php on line 6


 

 

  • 0


#2 Banderas

Banderas
    Topic Starter
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1

Отправлено 28 Февраль 2009 - 19:06

Порылся в иннете, нашел ошибку :) Кому интересно ....
Автор книги по которой я учусь ошибся, вместо => поставил =

Вот правильный код:
<?
$A = array

(

"Ivanov" =>
array ("name" => "Иванов", "sex" => "M", "email" => "ivan@ya.ru"),

"Pterov" =>
array ("name" => "Петров", "sex" => "M", "email" => "peta@ya.ru"),

"Sidorova" =>
array ("name" => "Сидорова", "sex" => "F", "email" => "sid@ya.ru")

);

echo $A ["Ivanov"]["sex"];
echo $A ["Ivanov"]["name"];
echo $A ["Petrov"]["email"];
?>

------------------------------
Я сам новичек, но уже буду учить новичков, которые знают меньше меня :)

Что бы вывести Иванову его имя (name), пол (sex), и имейл (email). Нельзя просто так прописать:
echo $A ["Ivanov"]["sex"]["name"]["email'];
Надо заново указывать, как у меня:
echo $A ["Ivanov"]["sex"];
echo $A ["Ivanov"]["name"];
echo $A ["Ivanov"]["email"];

  • 0


#3 Banderas

Banderas
    Topic Starter
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1

Отправлено 28 Февраль 2009 - 20:00

Вопрос о выводе такого масива:
<?
$S = array (10,11,12);
$K = array (15,16,17);

$P = array_merge($S,$K);

echo $P;
?>

Я так понял я неправильно прописал вывод, но не знаю как... Хочу спросить что можна вывести из этого масива? Например можно вывести 11,11,12,15,16,17 ? или один из них?
  • 0


#4 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 01 Март 2009 - 12:45

Banderas, Всё можно вывести. $P это массив, а не элемент массива.
array_merge() - объединяет два массива.
$P = array(10,11,12,15,16,17);
Чтобы вывести элементы не из ассоциативного массива, где ключу соответствует значение, здесь есть индексы от 0 до l-1, где l - длина массива

Для вывода такой строки

11,11,12,15,16,17

Нужно написать так:
echo "{$P[1]},{$P[1]},{$P[2]},{$P[3]},{$P[4]},{$P[5]},";

  • 0


Оформление форума – IPBSkins.ru