- function showUsage($aSpec, $bExit = false, $sError = false)
- {
- if ($sError)
- {
- echo basename($_SERVER['argv'][0]).': '.$sError."\n";
- echo 'Try `'.basename($_SERVER['argv'][0]).' --help` for more information.'."\n";
- exit;
- }
- echo "Usage: ".basename($_SERVER['argv'][0])."\n";
- $bFirst = true;
- foreach($aSpec as $aLine)
- {
- if (is_array($aLine))
- {
- if ($bFirst)
- {
- $bFirst = false;
- echo "\n";
- }
- $aNames = array();
- if ($aLine[1]) $aNames[] = '-'.$aLine[1];
- if ($aLine[0]) $aNames[] = '--'.$aLine[0];
- $sName = join(', ',$aNames);
- echo ' '.$sName.str_repeat(' ',30-strlen($sName)).$aLine[7]."\n";
- }
- else
- {
- echo $aLine."\n";
- }
- }
- echo "\n";
- exit;
- }
+ foreach ($aSpec as $aLine) {
+ if (is_array($aLine)) {
+ if ($aCounts[$aLine[0]] < $aLine[2]) showUsage($aSpec, $bExitOnError, 'Option \''.$aLine[0].'\' is missing');
+ if ($aCounts[$aLine[0]] > $aLine[3]) showUsage($aSpec, $bExitOnError, 'Option \''.$aLine[0].'\' is pressent too many times');
+ switch ($aLine[6]) {
+ case 'bool':
+ if (!array_key_exists($aLine[0], $aResult))
+ $aResult[$aLine[0]] = false;
+ break;
+ }
+ }
+ }
+ return $bUnknown;
+}
+
+function showUsage($aSpec, $bExit = false, $sError = false)
+{
+ if ($sError) {
+ echo basename($_SERVER['argv'][0]).': '.$sError."\n";
+ echo 'Try `'.basename($_SERVER['argv'][0]).' --help` for more information.'."\n";
+ exit;
+ }
+ echo "Usage: ".basename($_SERVER['argv'][0])."\n";
+ $bFirst = true;
+ foreach ($aSpec as $aLine) {
+ if (is_array($aLine)) {
+ if ($bFirst) {
+ $bFirst = false;
+ echo "\n";
+ }
+ $aNames = array();
+ if ($aLine[1]) $aNames[] = '-'.$aLine[1];
+ if ($aLine[0]) $aNames[] = '--'.$aLine[0];
+ $sName = join(', ', $aNames);
+ echo ' '.$sName.str_repeat(' ', 30-strlen($sName)).$aLine[7]."\n";
+ } else {
+ echo $aLine."\n";
+ }
+ }
+ echo "\n";
+ exit;
+}
+
+function chksql($oSql, $sMsg = false)
+{
+ if (PEAR::isError($oSql)) {
+ fail($sMsg || $oSql->getMessage(), $oSql->userinfo);
+ }
+
+ return $oSql;
+}