php - Calling User Defined Function In User Defined Class -
i trying create custom class handle mailing me.
here class (mailerclass.php) :
class mailer { // private fields private $to; private $subject; private $message; // constructor function function __construct($to, $subject, $message) { $to = $to; $subject = $subject; $message = $message; } // function send mail constructed data. public function sendmail() { if (mail($to, $subject, $messagecontent)) { return "success"; } else { return "failed"; } } }
when try call here (index.php) "call undefined function sendmail()" message?
if ($_server['request_method'] == "post") { // import class include('mailerclass.php'); // trim , store data $name = trim($_post['name']); $email = trim($_post['email']); $message = trim($_post['message']); // store mail data if ($validated == true) { // create new instance of mailer class user data $mailer = new mailer($to, $subject, $message); // send mail , store result $result = $mailer.sendmail(); }
why happen ??
you don't call class methods dot. call class methods (not static) ->
like:
$result = $mailer->sendmail();
besides need set properties $this->
(again if not static) change content of contstructor to:
$this->to = $to; $this->subject = $subject; $this->message = $message;
same goes mail()
function:
mail($this->to, $this->subject, $this->messagecontent)
you saw me mentioning static few times, if ever want access static property or method in class can use self::
Comments
Post a Comment