CLI. vpopmail Functions



本扩展模块是实验性的。本模块的行为,包括其函数的名称以及其它任何关于此模块的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。使用本扩展模块风险自担。

This extension has been moved from PHP as of PHP 4.3.0 and now vpopmail lives in PECL.


As of PHP 4, these functions are only available if PHP was configured with --with-vpopmail[=DIR].

vpopmail_add_alias_domain_ex -- Add alias to an existing virtual domain
vpopmail_add_alias_domain -- Add an alias for a virtual domain
vpopmail_add_domain_ex -- Add a new virtual domain
vpopmail_add_domain -- Add a new virtual domain
vpopmail_add_user -- Add a new user to the specified virtual domain
vpopmail_alias_add -- Insert a virtual alias
vpopmail_alias_del_domain -- Deletes all virtual aliases of a domain
vpopmail_alias_del -- Deletes all virtual aliases of a user
vpopmail_alias_get_all -- Get all lines of an alias for a domain
vpopmail_alias_get -- Get all lines of an alias for a domain
vpopmail_auth_user -- Attempt to validate a username/domain/password
vpopmail_del_domain_ex -- Delete a virtual domain
vpopmail_del_domain -- Delete a virtual domain
vpopmail_del_user -- Delete a user from a virtual domain
vpopmail_error -- Get text message for last vpopmail error
vpopmail_passwd -- Change a virtual user's password
vpopmail_set_user_quota -- Sets a virtual user's quota

add a note add a note User Contributed Notes
rwidmer at sourceforge dot net
02-Jun-2004 09:01
There is a more robust version of this extension, and other goodies for working with vpopmail from PHP available at: 

The extension will get added back to PECL once it is finished and tested.
11-Apr-2004 07:39
If you set vpopmail up with mysql support its quite easy to get a full listing of domains/users.  You'l only have to use the vpopmail php functions to add/delete users/domains in a own written front end.
justin at linuxgroup dot net
30-Apr-2003 07:11
In reply to "You can easily save the directory listing of ~vpopmail/domains"

This would only work if you had 100 domains or less. After that, domains are broken up into directories. Vpopmail will not put more then 100 domains in a directory because it's not efficient.
dredman at najt dot nu
02-Dec-2002 10:42
just compile MySQL support into vpopmail and you've got it. then you can get all the needed info from the db.
16-Oct-2002 10:31
In regard to an earlier post:

You can easily save the directory listing of ~vpopmail/domains and get the list of all domains on your system.

That's fairly easy and if you don't add/remove each day, you can keep the list static or update it via cron on certain intervals.
thomas at abitur003 dot de
16-Oct-2002 02:50
Well, you can safe your qmail-data like the domains, etc. in a database, which is quite usefull in my eyes. You just have to keep the data synchronized.
mike at hbhosting dot com
15-Oct-2002 08:07
This library is kind of useless without key functions like get_domain_info() and list_all_domains(). You can add and delete virtual domains, but you cannot list or view them. Without such functionality you can't go and write your own PHP front end to qmail.