Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Из массива вытащить значение одного поля

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Как получить значение определенного поля массива?
ysamarin
Отправлено: 26 Июня, 2017 - 07:23:58
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2017  


Помог: 0 раз(а)




Здравствуйте.

Помогите пожалуйста разобраться.

Имеется класс API-интерфейса:
class cNAME
public function check($orderid) {
$data = $this->getInitArray();
$data['action'] = 'check';
$data['orderid'] = $orderid;
return $this->postDecode($this->curlPost($this::apiUrl, $data), true);
}

Этот класс подключается и делается вызов:
require_once 'cNAME.php';
$api = new cNAME('username', 'apikey');
print_r($api->check(orderid));

В итоге получаем вывод, например:
Array ( [result] => success [error] => [message] => Array ( [id] => 12345 [pid] => 54321 [name] => Тут какое-нибудь название [service] => артикль [price] => 12.34 [status] => 1 [statusText] => processing [remain] => 150 [url] => http://sitename/product/index.php?orderid [count] => 200 ) )

Задача:
Необходимо получить вывод двух полей [remain] и [count], т.е. должны увидеть только 150 и 200

Примечание:
Например, конструкция вида:
$a= $api->cheсk(12354);
echo $a['remain'];

Не работает, т.е. пусто.
А так же пытюсь с помощью foreach...

СПАСИБО!!!

(Отредактировано автором: 26 Июня, 2017 - 07:24:33)

 
 Top
Sail
Отправлено: 26 Июня, 2017 - 08:30:17
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




ysamarin пишет:
В итоге получаем вывод, например:
Array ( [result] => success [error] => [message] => Array ( [id] => 12345 [pid] => 54321 [name] => Тут какое-нибудь название [service] => артикль [price] => 12.34 [status] => 1 [statusText] => processing [remain] => 150 [url] => http://sitename/product/index.php?orderid [count] => 200 ) )

Задача:
Необходимо получить вывод двух полей [remain] и [count], т.е. должны увидеть только 150 и 200

Быть может, так понятнее будет:
PHP:
скопировать код в буфер обмена
  1. /*
  2. [result] => success
  3. [error] =>
  4. [message] =>
  5.  * Array (
  6.  *  [id] => 12345
  7.  *  [pid] => 54321
  8.  *  [name] => Тут какое-нибудь название
  9.  *  [service] => артикль
  10.  *  [price] => 12.34
  11.  *  [status] => 1
  12.  *  [statusText] => processing
  13.  *  [remain] => 150
  14.  *  [url] => http://sitename/product/index.php?orderid
  15.  *  [count] => 200 )
  16. */
  17. if($a['result'] == 'success') {
  18.     echo "remain: {$a['message']['remain']}; count: {$a['message']['count']}";
  19. } else {
  20.     // что там находится в $a['error']
  21. }
  22.  
 
 Top
ysamarin
Отправлено: 26 Июня, 2017 - 12:35:55
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2017  


Помог: 0 раз(а)




Спасибо огромное, все отлично!!!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB