如何检查是否在我的服务器上安装了PEAR?

Nav*_*ruk 6 php email pear

我得到的错误如下:

警告:include_once(Net/SMTP.php)[function.include-once]:无法打开流:348行/usr/local/lib/php/Mail/smtp.php中没有此类文件或目录

警告:include_once()[function.include]:在/ usr/local中打开'Net/SMTP.php'以包含(include_path ='.:/ usr/lib/php:/ usr/local/lib/php')失败第348行/lib/php/Mail/smtp.php

致命错误:第349行/usr/local/lib/php/Mail/smtp.php中找不到"Net_SMTP"类

我的代码:

require_once 'Mail.php';

$from = "me@example.com>";

$to = "you@gmail.com>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";

$host = "mail.example.com";

$username = "me";
$password = "test";

$headers = array ('From' => $from,
  'To' => $to,
  'Subject' => $subject);

$smtp = Mail::factory('smtp',
  array ('host' => $host,
    'auth' => true,
    'username' => $username,
    'password' => $password));
$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
  echo("<p>" . $mail->getMessage() . "</p>");
 } else {
  echo("<p>Message successfully sent!</p>");
 }
Run Code Online (Sandbox Code Playgroud)

Mat*_*yan 23

如果您有ssh访问权限,则可以登录并运行

which pear
Run Code Online (Sandbox Code Playgroud)

如果安装它将打印这样的东西

/usr/bin/pear
Run Code Online (Sandbox Code Playgroud)

  • 这就是答案,选择它. (4认同)

tur*_*bod 13

使用此代码

require_once 'System.php';
var_dump(class_exists('System'));
Run Code Online (Sandbox Code Playgroud)

如果是这样,就安装了梨.更多信息:http://pear.php.net/manual/en/installation.checking.php


小智 5

如果服务器在ubuntu上,以下代码可能会有所帮助.

sudo apt-get install php-pear

sudo pear install mail

sudo pear install Net_SMTP

sudo pear install Auth_SASL

sudo pear install mail_mime
Run Code Online (Sandbox Code Playgroud)

更多信息在这里.