2010-04-27 77 views
0

版本信息:CI版本1.7.2 - PHP 5.3.1 - Apache2的 - 的Mac OSX 10.6.3

出于某种原因,当我加载CI的电子邮件库,无论是在我的控制,或者在autoload.php,它会立即自动回显的配置信息,像这样:

$config['protocol'] = 'sendmail'; 
$config['mailpath'] = '/usr/sbin/sendmail'; 
$config['charset'] = 'iso-8859-1'; 
$config['wordwrap'] = TRUE 

如果我在自动加载的autoload.php电子邮件库,它在任何东西之前是呼应我的源/页面。如果我在我的控制器中明确地调用它,它就会在那个确切点上得到回应。

我很难过,以前从未见过。任何想法如何抑制/消除?

在载入的自动加载库: $autoload['libraries'] = array('database','encrypt','email');

加载库中,所述控制器: $this->load->library('email');

+0

你应该发布你用来加载lib的代码。 – 2010-04-27 20:26:09

+0

添加了我的lib加载语法到orig post。很基本。 – k00k 2010-04-27 20:28:01

+0

这可能听起来很奇怪,但尝试在自动加载代码运行后设置头(),产生的“输出已经启动”错误可能会给出有问题的“echo”语句的行/文件。也许有人添加了一个调试行,打破了一些东西... – gnarf 2010-04-27 21:58:29

回答

1

似乎相当奇怪。我使用相同的CI版本成功使用此库。

奇怪的是,打印的配置值不是CI的默认值!

你在哪里设置配置值?

你确定你没有在其他地方设置配置吗?例如在配置文件夹中的配置文件中,并意外地在这里打印它们?这将解释为什么这些值不是默认值,并且它们只在类加载时才显示,因为它首先检查配置文件。

+0

谢谢,这指出我的配置文件夹,其中有email.php与这些值。我想很久以前的事情。我删除了该文件的内容,问题就消失了。但是,我相信该文件已正确实施。 – k00k 2010-04-27 21:57:54

+2

也许'email.php'在开始时缺少一个'<?php'? – gnarf 2010-04-27 21:59:54

+0

@gnarf - 宾果!就是这样。啊我的代码中有多个开发者的喜悦。我接受rbaker86的回答,因为它让我们走上了正确的道路。 加入<?php if(!defined('BASEPATH'))exit('No direct script access allowed'); 到顶部,它都很好。谢谢! – k00k 2010-04-27 22:06:58

相关问题