Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将带有事件的多维数组传递给Codeigniter日历库?_Php_Codeigniter - Fatal编程技术网

Php 如何将带有事件的多维数组传递给Codeigniter日历库?

Php 如何将带有事件的多维数组传递给Codeigniter日历库?,php,codeigniter,Php,Codeigniter,我正在制作日历,遇到了问题。我需要将包含事件的多维数组传递到日历库 这来自Codeingiter的用户手册: $this->load->library('calendar'); $data = array( 3 => 'http://example.com/news/article/2006/03/', 7 => 'http://example.com/news/article/2006/07/',

我正在制作日历,遇到了问题。我需要将包含事件的多维数组传递到日历库

这来自Codeingiter的用户手册:

$this->load->library('calendar');

$data = array(
               3  => 'http://example.com/news/article/2006/03/',
               7  => 'http://example.com/news/article/2006/07/',
               13 => 'http://example.com/news/article/2006/13/',
               26 => 'http://example.com/news/article/2006/26/'
             );

echo $this->calendar->generate(2006, 6, $data);
是否可以传递多维数组,例如:

$this->load->library('calendar');

$data = array(
               3  => array('url'=>'article/2006/03/', 'title'=>'Hello1'),
               7  => array('url'=>'article/2006/07/', 'title'=>'Hello2'),
               13 => array('url'=>'article/2006/13/', 'title'=>'Hello3'),
               26 => array('url'=>'article/2006/26/', 'title'=>'Hello4')
             );

echo $this->calendar->generate(2006, 6, $data);
{cal_cell_content}<h1>{title}</h1><a href="{url}">{day}</a>{/cal_cell_content}
然后在日历模板中引用它,类似于:

$this->load->library('calendar');

$data = array(
               3  => array('url'=>'article/2006/03/', 'title'=>'Hello1'),
               7  => array('url'=>'article/2006/07/', 'title'=>'Hello2'),
               13 => array('url'=>'article/2006/13/', 'title'=>'Hello3'),
               26 => array('url'=>'article/2006/26/', 'title'=>'Hello4')
             );

echo $this->calendar->generate(2006, 6, $data);
{cal_cell_content}<h1>{title}</h1><a href="{url}">{day}</a>{/cal_cell_content}
{cal\u cell\u content}{title}{/cal\u cell\u content}

谢谢

我要做的是扩展本机CodeIgniter日历库,并覆盖
generate()
函数。在构建日历主体的while循环中,更改构建单元格内容的代码。让它用给定的标题替换{title},用url替换{url}

我认为:

$out .= str_replace('{day}', $day, str_replace('{content}', $data[$day], $temp));


我几乎可以做到,但我没有时间测试它。

嘿,酷,我自己刚刚发现了它-而且它很有效!!唯一的问题是我不知道如何正确扩展Calendar类并重写generate函数。我在application/libraries文件夹和扩展的CI\u Calendar类中创建了MY\u Calendar,但这似乎不起作用……在application/libraries/中创建一个MY\u Calendar.php文件。并且比
类MY_Calendar扩展CI_Calendar{//new generate function}