За последние 24 часа нас посетили 10035 программистов и 439 роботов. Сейчас ищут 146 программистов ...

Вывод отдельных строк

Тема в разделе "Вопросы от блондинок", создана пользователем pzakun, 20 мар 2017.

  1. pzakun

    pzakun Новичок

    С нами с:
    20 мар 2017
    Сообщения:
    4
    Симпатии:
    0
    Здравствуйте! Для мониторинга серверов некоторых игр используется PHP-Source-Query

    я вношу свои данные сервера в этом источнике в папке examples в файл example

    PHP:
    1. <?php
    2.     require __DIR__ . '/../SourceQuery/bootstrap.php';
    3.  
    4.     use xPaw\SourceQuery\SourceQuery;
    5.  
    6.     // For the sake of this example
    7.     Header( 'Content-Type: text/plain' );
    8.     Header( 'X-Content-Type-Options: nosniff' );
    9.  
    10.     // Edit this ->
    11.     define( 'SQ_SERVER_ADDR', 'здесь пишу ip сервера' );
    12.     define( 'SQ_SERVER_PORT', здесь порт );
    13.     define( 'SQ_TIMEOUT',     1 );
    14.     define( 'SQ_ENGINE',      SourceQuery::SOURCE );
    15.     // Edit this <-
    16.  
    17.     $Query = new SourceQuery( );
    18.  
    19.     try
    20.     {
    21.         $Query->Connect( SQ_SERVER_ADDR, SQ_SERVER_PORT, SQ_TIMEOUT, SQ_ENGINE );
    22.      
    23.         print_r( $Query->GetInfo ( ) );
    24.             }
    25.     catch( Exception $e )
    26.     {
    27.         echo $e->getMessage( );
    28.     }
    29.     finally
    30.     {
    31.         $Query->Disconnect( );
    32.     }
    мне выдает информацию такого типа
    подскажите пожалуйста, а как сделать, чтобы выводил только одну запись, например, MaxPlayers, но без вот этого "[MaxPlayers] =>" просто число 150, или несколько выбранных записей, но тоже просто данные, заранее благодарен за помощь

     
  2. ADSoft

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

    С нами с:
    12 мар 2007
    Сообщения:
    746
    Симпатии:
    149
    Адрес:
    Татарстан
    почитайте про массивы ассоциативные
    PHP:
    1. echo $Query->GetInfo()['MaxPlayers'];
     
    pzakun нравится это.
  3. pzakun

    pzakun Новичок

    С нами с:
    20 мар 2017
    Сообщения:
    4
    Симпатии:
    0
    большое спасибо и за ответ и за совет, только начинаю в php разбираться
     
  4. TeslaFeo

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

    С нами с:
    9 мар 2016
    Сообщения:
    1.703
    Симпатии:
    415
    Как вариант:
    PHP:
    1. foreach ( $Query as $key => $value ) {
    2. echo "$key - $value <br />";
    3. }
    можешь в теги <p> завернуть и без <br /> или как-то по другому, как тебе больше нравится.
     
    pzakun нравится это.
  5. pzakun

    pzakun Новичок

    С нами с:
    20 мар 2017
    Сообщения:
    4
    Симпатии:
    0
    подскажите еще такой вопрос - каким образом правильно организовать мониторинг нескольких серверов?

    например, я вношу данные по серверу в базу mysql - название, порт, количество игроков (текущее, максимальное), затем по crontab каждые 5 минут запускается скрипт на php, который берет данные из базы (имя и порт), делает запрос к серверу и переписывает значения по количеству игроков на текущий момент

    сама по себе задумка по реализации правильная? думаю, что еще может возникнуть вопрос, если серверов будет несколько сотен, разрешит ли хостер (у меня бегет) такое количество запросов по crontab каждые 5 минут 24/7

    заранее благодарен за совет
     
  6. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    11.509
    Симпатии:
    1.555
    Адрес:
    Молдова, г.Кишинёв
    @pzakun для мониторинга можно Zabbix установить и настроить
     
  7. pzakun

    pzakun Новичок

    С нами с:
    20 мар 2017
    Сообщения:
    4
    Симпатии:
    0
    у меня просто сайт на хостинге, а не vds, я планирую собирать определенную статистику с игровых серверов и выводить в таблице на сайте
     
    #7 pzakun, 3 апр 2017
    Последнее редактирование: 3 апр 2017
  8. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    11.509
    Симпатии:
    1.555
    Адрес:
    Молдова, г.Кишинёв
    @pzakun тогда cron подходит
     
    pzakun нравится это.