За последние 24 часа нас посетили 17217 программистов и 1302 робота. Сейчас ищут 1696 программистов ...

как правильно вывести данные массива?

Тема в разделе "PHP для новичков", создана пользователем sofiyavv96, 24 апр 2020.

  1. sofiyavv96

    sofiyavv96 Новичок

    С нами с:
    12 апр 2020
    Сообщения:
    16
    Симпатии:
    0
    всем привет. как правильно использовать foreach, чтобы данные массива вывелись в формате “Книга <Название книги>, ее написал <Фио автора> <Год Рождения автора> (<email автора>)”



    PHP:
    1. $result3 = [
    2.     'authors' => [
    3.  
    4.     'ernsthy@gm.com' => [
    5.         'fio' => 'Ernst Hemingway',
    6.         'birthYear' => '1899',
    7.     ],
    8.     'jps@gm.com' => [
    9.         'fio' => 'Jean Paul Sartre',
    10.         'birthYear' => '1905',
    11.     ],
    12.     'wilkc@gm.com' => [
    13.         'fio' => 'Wilkie Collins',
    14.         'birthYear' => '1824',
    15.     ],
    16. ],
    17. 'books' => [
    18.     [
    19.       'name' => 'The old man and the sea',
    20.       'email' => 'ernsthy@gm.com',
    21.     ],
    22.     [
    23.       'name' => 'La Nausée',
    24.       'email' => 'jps@gm.com',
    25.     ],
    26.     [
    27.       'name' => 'The Moonstone',
    28.       'email' => 'wilkc@gm.com',
    29.     ],
    30.   ]
    31. ];
     
  2. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    @sofiyavv96 так ничему и не научился, молодец. Одним программистом меньше, остальным больше денюжек :)
    PHP:
    1. <?php
    2. $result3 = [
    3.     'authors' => [
    4.     'ernsthy@gm.com' => [
    5.         'fio' => 'Ernst Hemingway',
    6.         'birthYear' => '1899',
    7.     ],
    8.     'jps@gm.com' => [
    9.         'fio' => 'Jean Paul Sartre',
    10.         'birthYear' => '1905',
    11.     ],
    12.     'wilkc@gm.com' => [
    13.         'fio' => 'Wilkie Collins',
    14.         'birthYear' => '1824',
    15.     ],
    16. ],
    17. 'books' => [
    18.     [
    19.       'name' => 'The old man and the sea',
    20.       'email' => 'ernsthy@gm.com',
    21.     ],
    22.     [
    23.       'name' => 'La Nausée',
    24.       'email' => 'jps@gm.com',
    25.     ],
    26.     [
    27.       'name' => 'The Moonstone',
    28.       'email' => 'wilkc@gm.com',
    29.     ],
    30.   ]
    31. ];
    32.  
    33. $result = '';
    34. $books = $result3['books'];
    35. $authors = $result3['authors'];
    36.  
    37. foreach( $books as $item)
    38. {
    39.     $name = $item['name'];
    40.     $email = $item['email'];
    41.  
    42.     if( isset( $authors[ $email ] ) )
    43.     {
    44.         $fio = $authors[ $email ]['fio'];
    45.         $birthYear = $authors[ $email ]['birthYear'];
    46.  
    47.         $result .= "Книга {$name} ее написал {$fio} {$birthYear} ({$email})<br>";
    48.     }
    49. }
    50.  
    51. echo $result;
     
  3. sofiyavv96

    sofiyavv96 Новичок

    С нами с:
    12 апр 2020
    Сообщения:
    16
    Симпатии:
    0

    Здравствуйте, спасибо большое за помощь. Программирование - это мое хобби на стадии зачатка. Я пока что не научилась мыслить как программист и представлять алгоритмы решений задач. Я понимаю логику решения, когда вижу сам код. Мне пока очень сложно писать коды самой, но я стараюсь))
     
  4. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    @sofiyavv96 а не надо учится мыслить, само придет. Если бы вы показали какой то свой кусок когда. Типо вот пробовала, но не получилось, подскажите где я ошибаюсь..
    А так, кинули задачу, вам ее решили. Вы ее скопировали === вы ничему не научились.
     
  5. sofiyavv96

    sofiyavv96 Новичок

    С нами с:
    12 апр 2020
    Сообщения:
    16
    Симпатии:
    0
    был свой кусок, совсем нерабочий.:( спасибо за совет
     
  6. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    @sofiyavv96 показываю шаги как учатся:
    1. Итак есть задача, ага надо использовать foreach, поищу как в гугл
    https://google.gik-team.com/?q=php+foreach
    2. Ага написано
    PHP:
    1. foreach ($arr as &$value) {
    2.  
    3. }
    3. Так вышла ошибка
    Код (Text):
    1. Undefined variable: arr
    4. Окей гугл
    https://google.gik-team.com/?q=php+Undefined+variable:+arr
    ...
    Итак вы бы дошли до какого то момента, когда есть какой то кусок кода, но результат еще не тот. Гугл не помогает, надо написать на форум.

    А у вас так:
    1. Итак есть задача, я не знаю как ее решить. Напишу как на форум, может кто нибудь решит ее
    2. Ура код работает, но я ничему не научился.

    Я понимаю один раз можно так спросить, увидеть готовый код и понять для себя что то:
    https://php.ru/forum/threads/kak-pravilno-integrirovat-kod-v-imejuschujusja-verstku.85133/

    Но увы, ничего не поменялось.
    И как бы лично я то понимаю теперь уже, что раз вы хотите чему то научится, то я вам не помогаю на самом деле. И больше не помогу )
    --- Добавлено ---
    @sofiyavv96 Вот в следующий раз, обязательно свой кусок и выкладывайте.
     
  7. iceblood

    iceblood Активный пользователь

    С нами с:
    20 фев 2020
    Сообщения:
    83
    Симпатии:
    12
    Решай задачи чаще и все встанет на свои места )
     
  8. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @sofiyavv96, вот тебе альтернативный совет:
    Сначала читай книги по программированию как можно больше.
    Потом решай задачи как можно чаще.
    И только после этого всё станет на свои места.
     
    sofiyavv96 нравится это.
  9. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    @Valick от книжек спать хочется, говорю как наигравший в доту 900 часов (и если бы не стырили аккаунт было бы больше)
     
  10. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Именно поэтому ты до сих пор околопрограммист :)
    В моём понимании хобби - это когда интересно. Если не интересно получать знания по программированию, значит надо изменить хобби.
     
  11. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    @Valick нет, просто это хроническое, тяжело мне через книги информация дается. Предпочитаю инструкцию на сайте или форум какой нибудь. Ты читал когда нибудь книги по sql? там же сдохнуть можно. Но у меня есть сертификат по mssql.
     
  12. sofiyavv96

    sofiyavv96 Новичок

    С нами с:
    12 апр 2020
    Сообщения:
    16
    Симпатии:
    0
    Спасибо) у вас есть какие-нибудь рекомендации по книгам? или достаточно читать мэнуалы и пр. онлайн
     
  13. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @sofiyavv96, для начала я всем рекомендую "Самоучитель по РНР" И. Симдянов, М. Кузнецов
    Очень долго общался с этими авторами на их форуме, жаль, что случилось то, что случилось и сейчас тот форум заброшен.
    --- Добавлено ---
    Естественно. Там очень даже интересно.

    P.S. на этом форуме у меня 1800 сообщений, на том больше 5000
     
    #13 Valick, 24 апр 2020
    Последнее редактирование: 24 апр 2020
    sofiyavv96 нравится это.