PHP: Загрузите входящую электронную почту с POP3 или IMAP, проанализируйте его и отметьте его, как читал/удалял на сервере

Я не уверен в C#.

я действительно знаю, однако, что можно записать, что VB LINNQ кодирует w/out эти 3,5 библиотеки, пока Вы используете компилятор VS 2008 года для предназначения для 2,0 платформ.

необходимо будет, однако, реализовать некоторые методы LINQ Ваш сам.

LINQ использует синтетическое преобразование для перевода запросов в исполняемый код. В основном это возьмет код как это:

dim q = from x in xs where x > 2 select x*4;

и преобразовывают его в код как это:

dim q = xs.where(function(x) x > 2).select(function(x) x * 4);

Для функциональности LINQ, которая поставлется с 3,5 платформами, те методы реализованы как дополнительные методы или на IEnumerable или на IQueryable (существует также набор методов, которые работают над наборами данных также).

методы расширения IEnumerable по умолчанию определяются в Системе. Linq. Счетный и похожи на это:

<Extension()>
public function Select(of T, R)(source as IEnumerable(of T), transform as Func(of T, R)) as IEnumerable(of R)

   'do the transformation...

end function

дополнительные методы IQueryable берут деревья выражений в качестве аргументов, а не лямбды. Они похожи на это:

 <Extension()>
 public function Select(of T, R)(source as IQueryable<T>, transform as Expression(of Func(of T, R))
     'build a composite IQueryable that contains the expression tree for the transformation
 end function

версии дерева выражений позволяют Вам получить древовидное представление выражений, предоставленных пунктам, которые могут тогда использоваться для генерации кода SQL (или что когда-либо еще Вы хотите).

Вы могли, вероятно, создать свою собственную версию LINQ к объектам приблизительно через день или около этого. Это является все довольно прямым.

, Если бы Вы хотите использовать DLINQ, тогда вещи были бы трудными.

9
задан Pep 20 September 2009 в 07:08
поделиться

1 ответ

http://ca.php.net/imap

$mb = imap_open("{host:port/imap}","username", "password" );

$messageCount = imap_num_msg($mb);
for( $MID = 1; $MID <= $messageCount; $MID++ )
{
   $EmailHeaders = imap_headerinfo( $mb, $MID );
   $Body = imap_fetchbody( $mb, $MID, 1 );
   doSomething( $EmailHeaders, $Body );
}
23
ответ дан 4 December 2019 в 09:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: