Slim Framework for beginners [closed]

How does anybody learn how to use this system?

I can't seem to find any tutorials or books or anything on how to use this program. Yes their website briefly explains a few things but there is no clarification or anything. Google has failed me.

Can anyone help me with this? I need to use this but it looks completely foreign to me.


UPDATE: After 3 years, It is time to add some updates to this answer. A lot has changed in slim framework (and even PHP) during this time.

Slim version 3 has been released and brought some major changes to it. In my tests, It is slightly slower and tad more complicated than slim 2, But architecture wise, it is much better, secure, suited for both large projects and small website alike.
Also, PHP has adopted really good standardization in form of PSR which I think everyone should start to adopt. Object-oriented implementation is improved a lot in 3 years and with the release of PHP 7, I don't miss my Java days anymore.

Some links to getting started.

  • Slim framework now has excellent docs, If someone is still using Slim2 it also has a decent docs.
  • A must watch Slim 3 Primer to get started. http://phpsw.uk/talks/a-slim-3-primer
  • Slim Blog is really good thing to read.
  • https://github.com/xssc/awesome-slim is a good place to bookmark.

Treehouse and few others have made some tutorials on Slim 2 as mentioned in comments, they are worth looking. Slim 3 is yet to have a beginner's tutorial videos but framework in itself is simple to understand. For simple websites, I would still recommend Slim 2 for those not really an experienced programmer. But if someone is trying to build a big professional application/product, Use Slim 3.


older answer

I will agree that slim lacks certain attentions in terms of documentation and guides. There is still no great tutorial for it, but if you have good pickup skills, Let me point you to the only worthwhile thing I found on net.

This is Presentation on the slim framework. Not a complete tutorials but it does explain certain basics to use the framework. It has helped me when I first picked up the framework. It is a Presentation By Jeremy Kendall.

The Slides can be found on slideshare.

The video is 43 min long but it is worth.


This is how I did it.

I read few tutorials from people up there then I "walked" through code. Slim is really "slim", only ~50 files.

Check Slim.php file, everything starts there. See what's going on in the constructor, then see get/post methods. If you have xdebug installed then it could help you walk through one simple request and so on.

And as an added bonus you will learn a lot about PHP, patterns, basically how everything works.

P.S. My first answer here :)


Key point from the presentation mentioned above by Jeremy Kendall (do watch it), that the docs don't mention until 2/3rds of the way down: to let Slim handle the routing, you need an .htaccess file:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

Et voila, the example at the start of the Slim docs will now work for you. smacks forehead

More info on the syntax and content of these .htaccess rules:

  • RewriteCond
  • RewriteRule

Simple Example

Neeeded 3 files

  • file to program(eg- index.php/myfile.php)
  • Slim(downloaded package)
  • .htaccess

Step 1: .htaccess file

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php [QSA,L]

Step 2: myfile.php

require 'Slim/Slim.php';

\Slim\Slim::registerAutoloader();

$app=new \Slim\Slim();

$app->get('/',function() {

    echo "Hello World";

});
$app->run();

Running Program

localhost/project1/myfile.php

More tutorials

http://nesbot.com/2012/6/26/multilingual-site-using-slim

https://github.com/briannesbitt/Slim-ContextSensitiveLoginLogout