array getopt ( string $options [, array $longopts ] )
Pobiera opcje z linii poleceÅ„ z listy argumentów, analizuje opcje przekazywane do skryptu.
Parametry
$options
Każda postać w tym ciÄ…gu bÄ™dzie używana jako opcja znaków i dopasowanej przeciwko opcji przekazywanej do skryptu, poczynajÄ…c od myÅ›lników (-). Na przykÅ‚ad, opcja z ciÄ…giem "x" rozpoznaje jako opcjÄ™-x.
$longopts
Tablica opcji. Każdy element w tej tablicy bÄ™dzie używany jako opcja stringu i dopasowana bÄ™dzie przeciwko opcji przekazywanej do skryptu, poczÄ…wszy od dwóch myÅ›lników (--). Na przykÅ‚ad, longopts elementu "opt" rozpoznaje opcjÄ™ jako - opt.
Informacja: Przed PHP5.3.0 parametr ten byÅ‚ dostÄ™pny tylko na kilka systemów
Opcje tego parametru mogą zawierać następujące elementy:
* Indywidualne znaki (nie przyjmujemy wartości)
* Postacie z dodanym dwukropkiem (wartość parametru wymagana)
* Postacie z dwoma dwukropkami (opcjonalnie wartość)
Opcja wartoÅ›ci pierwszego argumentu wystÄ™pujÄ… po ciÄ…gu. Nie ma znaczenia, również wartość wiodÄ…cych spacji czy też ich brak.
Informacja: Opcjonalnie wartości nie akceptują "" (spacja) jako separatora.
Informacja: Format $options i $longopts jest prawie taka sama, jedynÄ… różnicÄ… jest to, że $longopts bierzÄ™ tablicÄ™ opcji (w której każdy element jest opcjÄ…), gdzie za $options ma ciÄ…g (gdzie każdy znak jest opcjÄ…).
Kompatybilność: PHP4, PHP5.
Listing
$options = getopt("f:hp:");
var_dump($options);
?>
//uruchomienie tego skryptu wraz z kodem: script.php -fvalue -h wyświetli:
array(2) {
["f"]=>
string(5) "value"
["h"]=>
bool(false)
}
#2 getopt()
<?php
$shortopts = "";
$shortopts .= "f:"; // wymagana wartość
$shortopts .= "v::"; // opcjonalna wartość
$shortopts .= "abc"; // te opcji nie akceptują wartości
$longopts = array(
"required:", // wymagana wartość
"optional::", // opcjonalna wartość
"option", // brak wartości
"opt", // brak wartości
);
$options = getopt($shortopts, $longopts);
var_dump($options);
?>
// uruchomienie tego skryptu z script.php -f "value for f" -v -a --required values --optional="opcjonalna wartość" --option wyświetli:
array(6) {
["f"]=>
string(11) "value for f"
["v"]=>
bool(false)
["a"]=>
bool(false)
["required"]=>
string(5) "value"
["optional"]=>
string(14) "opcjonalna wartość"
["options"]=>
bool(false)
}
//#3 getopt()
//dodanie kilku opcji jako jednÄ…
<?php
$options = getopt("abc");
var_dump($options);
?>
//uruchomujemy skrypt z script.php -aaac ktory zwróci:
array(2) {
["a"]=>
array(3) {
[0]=>
bool(false)
[1]=>
bool(false)
[2]=>
bool(false)
}
["c"]=>
bool(false)
}
Ranga: Administrator serwisu Punktów: 38473

