Forum und email
Mailové funkce

LXXVIII. Mailové funkce

Úvod

Funkce mail() umožňuje odesílat maily.

Požadavky

Aby byly tyto funkce dostupné, musí mít PHP při kompilaci přístup ke spustitelnému souboru sendmail na vašem systému. Pokud používáte jiný program, jako qmail nebo postfix, použijte odpovídající náhradu za sendmail, které je v daném programu k dispozici. PHP bude sendmail hledat nejprve v cestě PATH a pak zde: /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib. Vřele doporučujeme mít sendmail dostupný z cesty PATH. Uživatel, který PHP zkompiloval, také musí mít právo přístupu ke spustitelnému souboru sendmail.

Instalace

K používání těchto funkcí není třeba žádná instalace, jsou součástí jádra PHP.

Konfigurace běhu

Chování těchto funkcí je ovlivněno nastavením parametrů v php.ini.

Tabulka 1. Konfigurační volby rozšíření Mail

NázevVýchozíMěnitelné
SMTP"localhost"PHP_INI_ALL
smtp_port"25"PHP_INI_ALL
sendmail_fromNULLPHP_INI_ALL
sendmail_pathDEFAULT_SENDMAIL_PATHPHP_INI_SYSTEM
Bližší vysvětlení a definici PHP_INI_* konstant viz funkci ini_set().

Zde je stručný popis konfiguračních direktiv.

SMTP string

Používá se pouze pod Windows: DNS jméno nebo IP adresa SMTP serveru, který PHP použije pro posílání e-mailů ve funkci mail().

smtp_port int

Používá se pouze pod Windows: Číslo portu na serveru určeném v direktivě SMTP, na který se má připojit při posílání e-mailů ve funkci mail(). Výchozí je číslo 25. K dispozici pouze od PHP 4.3.0.

sendmail_from string

Jaká adresa "From:" se má použít při posílání e-mailu z PHP pod Windows.

sendmail_path string

Kde lze najít program sendmail, obvykle /usr/sbin/sendmail nebo /usr/lib/sendmail. Příkaz configure se pokusí tento soubor nalézt a nastavit, ale když neuspěje, můžete ho nastavit zde.

Na systémech, na kterých se nepoužívá sendmail, by měla být tato direktiva nastavena na náhradu příkazu sendmail, kterou poskytuje daný systém (pokud existuje). Například uživatelé systému Qmail mohou tuto direktivu za normálních okolností nastavit na /var/qmail/bin/sendmail nebo na /var/qmail/bin/qmail-inject.

Příkaz qmail-inject nepotřebuje žádné přepínače, aby e-maily korektně zpracoval.

Typy prostředků

Toto rozšíření nemá definován žádný typ prostředku (resource).

Předdefinované konstanty

Toto rozšíření nemá definovány žádné konstanty.

Obsah
ezmlm_hash -- Počítá hash hodnotu potřebnou pro EZMLM
mail -- send mail