Logo F2FInterview

Codelgnitor Interview Questions

Q   |   QA

CodeIgniter is a product of EllisLab. New releases and new features in the framework are made available when it is possible to release them, and may always be a surprise:
http://codeigniter.com/forums/viewthread/53619/P15/#262381

You can glean some insight from reading the Changelog, which shows the historical frequency of releases and the types and scale of changes.

New code is welcome, but not all code can be included. To maximize the chances of your code making it into CI, test (PHP 4 and 5) and document the code. All decisions about incorporating it fall to EllisLab. Basically, if you want to satisfy your lust for abiding fame you have to make an effort to promulgate your code to as many CI developers as possible who put it through an informal ‘vetting’ process. As part of this process you should create a ‘manual page’ to help people learn.

There are standard PHP function that’s good for this kind of thing, and you’re encouraged to consult the PHP User Guide.

get_class() will return the current class’s name.

get_class_methods() will return the full list of methods for a given class.


Alternatively, consult the URI Class in the user manual, paying particular attention to the rsegment() function - as you may be happy with pulling segment(1) for your class, and segment(2) for your method.


Alternatively, you can query the CI Routing class directly, using these functions:

$this->router->class;
$this->router->method;  

A. This is related to the question above about nested templates and partials. Basically, CI cache library (1.5.4) only supports full page caching - it’s all or nothing. There are several contributions that can help.

The Sparks library is one approach. (NOTE: the Sparks object caching library is currently an orphan (as of 20070925) as the developer has moved on to Zend Framework - anyone want to step up and carry it on?)

In case you have questions to ask on the forum, please review this general information on caches. There are many levels of caching and they can be broken down into a few categories and approaches:

PHP code itself: php opcode of some kind

The following can be classed as session-specific or global caches depending on the approach:
DB cache: db query, db object serialization
HTML output cache: partial or full page caching

Browser cache is always (by definition) session-specific:
Browser cache: using headers to control cache, JS and CSS architecture to optimize browser cache-ability

Often this question disguises a requirement for some shared methods - consult the earlier question on View Partials and Header/Footer/Menu common views first, and confirm your question isn’t better answered there.

Modular Extensions (ME) aka the HMVC library allows you to do this. ME/HMVC<strike>You don’t. See http://codeigniter.com/forums/viewthread/55212/</strike> for more discussion.

In order to link this F2FInterview's page as Reference on your website or Blog, click on below text area and pres (CTRL-C) to copy the code in clipboard or right click then copy the following lines after that paste into your website or Blog.

Get Reference Link To This Page: (copy below code by (CTRL-C) and paste into your website or Blog)
HTML Rendering of above code: