Подсчет сообщений из нескольких входящих сообщений с помощью Mailinator API

Нужен совет. Я играю с PHP API Mailinator, и мне было интересно, можно ли получить количество сообщений из нескольких почтовых ящиков Mailinator. Может быть, использовать массив входных имен? Я пробовал его с одним входным почтовым ящиком, и он выбирает нормально, но когда я использую массив, он дает мне счетчик сообщений только для первого входящего (в массиве). Ниже приведен код, который я пытался получить один входящие.

include 'Mailinator.php';
$mailinator = new Mailinator('API_KEY_HERE');
$data = new Inbox();
$data = $mailinator->inbox(exampleinbox);
echo $data->count();

Я ищу что-то подобное, но не работает!

include 'Mailinator.php';
$inboxes = array("inbox1", "inbox2", "inbox3");
$mailinator = new Mailinator('API_KEY_HERE');
$data = new Inbox();
$data = $mailinator->inbox($inboxes);
echo $data->count(0);
echo $data->count(1);

Также было бы здорово, если бы я мог сделать массив из file.txt

0

Решение

Простите, я не знаю Mailinator, но, если этот код работает

include 'Mailinator.php';
$mailinator = new Mailinator('API_KEY_HERE');
$data = new Inbox();
$data = $mailinator->inbox(exampleinbox);
echo $data->count();

Затем, чтобы получить те же данные из нескольких почтовых ящиков, почему бы просто не сделать

include 'Mailinator.php';
$mailinator = new Mailinator('API_KEY_HERE');

$inboxes = array("inbox1", "inbox2", "inbox3");
$counts = [];

foreach ($inboxes as $inbox) {
$data = new Inbox();
$data = $mailinator->inbox($inbox);

$counts[] = ['inbox'=>$inbox, 'count'=>$data->count()]
}

// here you can convert to JSON String if you like

echo json_encode($counts);
0

Другие решения

Yipee !! Получил это работает.

<?
// Created this Internal API Handler - api.php
$inbox = $_GET['inbox'];
include 'Mailinator.php';
$mailinator = new Mailinator('API_KEY_HERE');
$data = new Inbox();
$data = $mailinator->inbox($inbox);
$json = json_encode ($data->count());
echo "$json";
?>

Затем использовал несколько мульти локон!

<?php

//Filename multi.php

function multiRequest($data, $options = array()) {

// array of curl handles
$curly = array();
// data to be returned
$result = array();

// multi handle
$mh = curl_multi_init();

// loop through $data and create curl handles
// then add them to the multi-handle
foreach ($data as $id => $d) {

$curly[$id] = curl_init();

$url = (is_array($d) && !empty($d['url'])) ? $d['url'] : $d;
curl_setopt($curly[$id], CURLOPT_URL,            $url);
curl_setopt($curly[$id], CURLOPT_HEADER,         0);
curl_setopt($curly[$id], CURLOPT_RETURNTRANSFER, 1);

// post?
if (is_array($d)) {
if (!empty($d['post'])) {
curl_setopt($curly[$id], CURLOPT_POST,       1);
curl_setopt($curly[$id], CURLOPT_POSTFIELDS, $d['post']);
}
}

// extra options?
if (!empty($options)) {
curl_setopt_array($curly[$id], $options);
}

curl_multi_add_handle($mh, $curly[$id]);
}

// execute the handles
$running = null;
do {
curl_multi_exec($mh, $running);
} while($running > 0);


// get content and remove handles
foreach($curly as $id => $c) {
$result[$id] = curl_multi_getcontent($c);
curl_multi_remove_handle($mh, $c);
}

// all done
curl_multi_close($mh);

return $result;
}

?>

Потом назвал это

<?php
require_once 'multi.php';
$data = array(
'http://example.com/api.php?inbox=inbox1',
'http://example.com/api.php?inbox=inbox2',
'http://example.com/api.php?inbox=inbox3'
);
$r = multiRequest($data);

echo '<pre>';
print_r($r);

?>
0

По вопросам рекламы [email protected]