ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Триннадцатая.


30-04-2015

boolean openssl_x509_export(resource certificate, string output, boolean terse)
Функция openssl_x5 0 9_export размещает сертификат X.509 в аргументе output. Необязательный аргумент terse контролирует наличие дополнительных читаемых комментариев. По умолчанию он имеет значение TRUE, что означает, что он не содержит комментариев.
Разное:Apache,IMAP,MnoGoSearch,OpenSSL
boolean openssl_x509_export_to_file(resource certificate, string file, boolean terse)
Функция openssl_x509_export_to_file размещает сертификат X.509 в указанном файле. Необязательный аргумент terse контролирует наличие дополнительных читаемых комментариев. По умолчанию он имеет значение TRUE, что означает, что он не содержит комментариев.
void openssl_x509_free(resource certificate)
Эта функция предназначена для освобождения памяти, занятой ресурсом certificate.
array openssl_x509_parse(resource certificate, boolean short_names)
Функция openssl_x5 0 9_parse возвращает массив с описанием атрибутов заданного сертификата. По умолчанию PHP использует в качестве ключей короткие имена. Для использования длинных имен можно задать в необязательном аргументе short_names значение FALSE.
resource openssl_x509_read(string certificate)
Функция openssl_x509_read создает для заданного сертификата ресурс в виде строки или пути к файлу.

19.5. Сообщения ОС System V
Сообщения System V являются одним из трех способов обмена данными между процессами, которыми располагают операционные системы System V. Они позволяют процессам обмениваться данными с помощью форматированных сообщений. Процесс размещает сообщения фиксированной длины в очередях других процессов.
Подробное описание механизма обмена сообщениями в операционных системах System V выходит за рамки данной книги. Сведения о нем можно почерпнуть из множества источников. Я рекомендую книгу Ричарда Стивенса (W. Richard Stevens) Unix Network Programming, опубликованную издательством Prentice Hall. Второе издание этой книги было опубликовано в двух томах в 1997 году. 
В листингах 19.18 и 19.19 показана работа простейшего сервера, который переводит строки в верхний регистр с использованием сообщений System V. Сервер ожидает помещения клиентами сообщений в его очередь, а затем размещает преобразованный текст в клиентские очереди. Клиент также имеет возможность отослать приветствие или запрос на выключение сервера.

Листинг 19.18. Сервер сообщений System V

<?php
// ключ к очереди сервера define('SERVER_QUEUE', 1970); // тип сообщений define('MSG_SHUTDOWN', 1); define('MSG_TOUPPER', 2); define('MSG_HELLO', 3); // создать очередь
$queue = msg_get_queue(SERVER_QUEUE); // обработать сообщения $keepListening = TRUE; while($keepListening)
{
//ожидание сообщения
msg_receive($queue, 0, $type, 1024, $message); switch($type)
{
case MSG_SHUTDOWN:
$keepListening = FALSE;
break; case MSG_HELLO:
print($message . " says hello.n");
break; case MSG_TOUPPER:
$clientQueue = msg_get_queue($message['caller']);
$response = strtoupper($message['text']);
msg_send($clientQueue, MSG_TOUPPER, $response);
break;
}
}
// удалить очередь msg_remove_queue($queue);
?>

Листинг 19.19. Сервер сообщений System V

<?php
// ключ к очереди сервера define('SERVER_QUEUE', 1970); // тип сообщений define('MSG_SHUTDOWN', 1); define('MSG_TOUPPER', 2); define('MSG_HELLO', 3); 
// создать очередь
$qid = rand(1, 10000);
$queue = msg_get_queue($qid);
$serverQueue = msg_get_queue(SERVER_QUEUE);
// отправить приветствие
msg_send($serverQueue, MSG_HELLO, $qid); //перевести строку в верхний регистр msg_send($serverQueue, MSG_TOUPPER, array('caller'=>$qid,
,text'=>,corephp')); // ожидать ответа от сервера
msg_receive($queue, 0, $type, 1024, $message); print("$messagen");
// дать команду на отключение сервера msg_send($serverQueue, MSG_SHUTDOWN, NULL); // удалить очередь msg_remove_queue($queue);
?>

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Двеннадцатая. PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Четырнадцатая.