Я взял ответ от Джеффри Л Уитледжа и немного укрепил его. У меня пока нет комментариев, чтобы комментировать его ответ.
Теперь он поддерживает как одиночные, так и двойные кавычки. Вы можете использовать кавычки в самих параметрах, используя другие типизированные кавычки.
Он также удаляет кавычки из аргументов, поскольку они не вносят вклад в информацию о аргументе.
public static string[] SplitArguments(string commandLine)
{
var parmChars = commandLine.ToCharArray();
var inSingleQuote = false;
var inDoubleQuote = false;
for (var index = 0; index < parmChars.Length; index++)
{
if (parmChars[index] == '"' && !inSingleQuote)
{
inDoubleQuote = !inDoubleQuote;
parmChars[index] = '\n';
}
if (parmChars[index] == '\'' && !inDoubleQuote)
{
inSingleQuote = !inSingleQuote;
parmChars[index] = '\n';
}
if (!inSingleQuote && !inDoubleQuote && parmChars[index] == ' ')
parmChars[index] = '\n';
}
return (new string(parmChars)).Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
}
Наиболее широко используемая форма документации API для PHP - это phpDocumentor a.k.a. phpdoc. Довольно много IDE также могут извлекать информацию для улучшения подсказок автозаполнения с помощью документации API в стиле phpDocumentor.
PHPdoc - это первое, что приходит на ум. Взгляните на http://www.phpdoc.org/
PEAR (репозиторий расширений и приложений PHP) имеет стандартов кодирования , которые включают образец файла с использованием phpDocumentor, а также некоторые другие полезные соглашения.