Я работаю над своим первым проектом в CodeIgniter, и мне интересно, как я могу использовать свой класс из библиотеки в моем контроллере.
библиотеки /Twitterclass.php:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Twetterclass {
public function __construct($hashtag, $tweet_id)
{
require_once('TwitterAPIExchange.php');
//There is my working code
//I want to make use of this $n in my Controller
return $n;
}
}
/* End of file Twetterclass.php */
Мой контроллер:
public function microtweets()
{
$params = array('hashtag' => 'somehashtag', 'tweet_id' => '673899616799191040');
$data['count_tweets'] = $this->load->library('Twetterclass', $params);
$this->load->view('tweets', $data);
}
Я хочу использовать его расширенный класс в своем контроллере и работать там с этим значением $ n или, например, отображать его в моем представлении.
Я получаю несколько ошибок:
Возникла ошибка PHP
Уровень важности: предупреждение
Сообщение: Отсутствует аргумент 2 для Twetterclass :: __ construct(), вызывается в /home/jail/kg7dad5/home/kg7dad5/domains/badzlepszy.pl/public_html/coinmonitor/system/core/Loader.php в строке 1246 и определен
Имя файла: libraries/Twetterclass.php
Номер строки: 5
Backtrace:
Файл: /application/libraries/Twetterclass.php Линия: 5 Функция: _error_handler
Файл: /application/controllers/Cointweet.php Линия: 24 Функция: библиотека
Файл: /public_html/coinmonitor/index.php Линия: 292 Функция: require_once
в соответствии с вашим кодом, измените это,
public function __construct($arr)
{
echo $arr['hashtag'];
echo $arr['tweet_id'];
exit;
}
Потому что вы передаете 1 массив, поэтому обращайтесь в библиотеку с индексом массива.
сначала попробуйте отладить параметр, который вы передали в конструкторе
public function __construct($hashtag, $tweet_id)
{
echo $hashtag;
echo $tweet_id;
die;
}
Message: Undefined variable: hashtag
об ошибкеMessage: Undefined variable: hashtag
и то же самое дляtweet_id
, но произойдет ли это, если я отправлю переменные в$params
?