PHP.mk документација

expect_expectl

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.expect-expectl.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.expect-expectl.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
expect_expectl

Референца за `function.expect-expectl.php` со подобрена типографија и навигација.

function.expect-expectl.php

expect_expectl

(PECL expect >= 0.1.0)

expect_expectlЧека додека излезот од процесот не се совпадне со еден од обрасците, поминат е одреден временски период, или EOF се гледа

= NULL

expect_expectl(resource $expect, array $cases, array &$match = ?): int

Чека додека излезот од процесот не се совпадне со еден од обрасците, поминат е одреден временски период, или EOF се гледа.

Враќа match е обезбедено, тогаш се пополнува со резултатот од пребарувањето. Совпаднатиот стринг може да се најде во match[0]. Совпаднатите под-стрингови (според заградите) во оригиналниот образец може да се најдат во match[1], match[2], и така натаму, до match[9] (ограничувањето на libexpect).

Параметри

expect
Expect поток, претходно отворен со expect_popen().
cases

Низа од очекувани случаи. Секој очекуван случај е индексирана низа, како што е опишано во следната табела:

Очекуван случај Низа
Индекс Клуч Тип на вредност = NULL Задолжително Стандардна вредност
0 string образец, кој ќе се совпадне со излезот од потокот yes    
1 mixed вредност, што ќе ја врати оваа функција, ако образецот се совпадне yes    
2 integer тип на образец, еден од: EXP_GLOB, EXP_EXACT or EXP_REGEXP no EXP_GLOB

Вратени вредности

Враќа вредност поврзана со образецот што се совпадна.

При неуспех оваа функција враќа: EXP_EOF, EXP_TIMEOUT or EXP_FULLBUFFER

Дневник на промени

Верзија = NULL
PECL очекува 0.2.1 Пред верзијата 0.2.1, во match параметарот беше вратен стринг за совпаѓање, а не низа од поднизи за совпаѓање.

Примери

Пример #1 expect_expectl() example

<?php
// Copies file from remote host:
ini_set("expect.timeout", 30);

$stream = fopen("expect://scp user@remotehost:/var/log/messages /home/user/messages.txt", "r");

$cases = array(
// array(pattern, value to return if pattern matched)
array("password:", "asked for password"),
array(
"yes/no)?", "asked for yes/no")
);

while (
true) {
switch (
expect_expectl($stream, $cases)) {
case
"asked for password":
fwrite($stream, "my password\n");
break;
case
"asked for yes/no":
fwrite($stream, "yes\n");
break;
case
EXP_TIMEOUT:
case
EXP_EOF:
break
2; // break both the switch statement and the while loop
default:
die(
"Error has occurred!");
}
}

fclose($stream);
?>

Види Исто така

  • expect_popen() - Изврши команда преку Bourne школка и отвори го PTY потокот до процесот

Белешки од корисници

Нема белешки од корисници за оваа страница.
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.