Когда я передаю в функцию переменную, полученную из командной строки, она возвращает недействительную информацию
echo "Enter vendor name: [vendor1|vendor2|vendor3|vendor4|vendor5] : ";
$handle = fopen ("php://stdin","r");
$vendor = fgets($handle);
$tables = array();
$err = validate_vendor($vendor, $tables);
if(!$err) {
exit("error: invalid vendor\n");
}
В функцию validate_vendor я встроил приведенную ниже логику: если имя поставщика не входит в число этих типов поставщиков, то оно возвращает 0, в противном случае — 1. Даже если я нажимаю действительное имя поставщика, например «vendor1», тогда оно также выдает неверное имя поставщика и завершает работу.
function validate_vendor($prev_vendor, &$tables) {
if($prev_vendor == "vendor1")
{
---
---
return 1;
}
if($prev_vendor == "vendor2")
{
---
---
return 1;
}
if($prev_vendor == "vendor3")
{
---
---
return 1;
}
if($prev_vendor == "vendor4")
{
---
---
return 1;
}
if($prev_vendor == "vendor5")
{
---
---
return 1;
}
else
{
return 0;
}
}
Подробнее здесь: https://stackoverflow.com/questions/644 ... mmand-line