У меня есть сценарий командной строки PHP, который начинает задание к серверу задания, при этом имя задания является аргументом. Имена задания являются namespaced, таким как Foo:Bar_Baz_JobName. Есть ли способ, которым я мог реализовать автозавершение, как то, как ввод первых нескольких букв имени файла и нажимающего удара вкладки завершает имя файла для Вас. Я знаю, что это может быть сделано, потому что работы заполнения клавишей Tab над человечностью с Кв. - добираются, я просто не знаю, может ли это быть сделано в PHP.
Автозаполнение выполняется с использованием библиотеки GNU readline, которая, очевидно, доступна из PHP. В частности, посмотрите readline_completion_function
. Использование довольно простое; вы вызываете readline_completion_function
с одним аргументом, функцией обратного вызова, которая обрабатывает завершение. Функция обратного вызова принимает первые несколько букв (в основном, все, что вы вводите перед нажатием TAB) в качестве входных данных и должна возвращать массив возможных совпадений.
Вы можете попробовать использовать readline , точнее, функцию readline_completion_function
.