Single-entry implementation gone wrong

Posted by user745434 on Stack Overflow See other posts from Stack Overflow or by user745434
Published on 2012-10-22T16:47:48Z Indexed on 2012/10/22 17:01 UTC
Read the original article Hit count: 166

Filed under:
|

I'm doing my first single-entry site and based on the result, I can't see the benefit.

I've implemented the following:

  • .htaccess redirects all requests to index.php at the root
  • Url is parsed and each /segment/ is stored as an element in an array
  • First segment indicates which folder to include (e.g. "users" » "/pages/users/index.php").
  • index.php file of each folder parses the remaining elements in the segments array until array is empty.
  • content.php file of each folder is included if there are no more elements in the segments array, indicating that the destination file is reached

Sample

File structure ( folders in [] ):

  • [root]
    • index.php
    • [pages]
      • [users]
        • index.php
        • content.php
        • [profile]
          • index.php
          • content.php
          • [edit]
            • index.php
            • content.php
      • [other-page]
        • index.php
        • content.php

Request: http://mysite.com/users/profile/

  1. .htaccess redirects request to http://mysite.com/index.php

  2. URL is parsed and segments array contains: [1] users, [2] profile

  3. index.php maps [1] to "pages/users/index.php", so includes that file

  4. pages/users/index.php maps [2] to pages/users/profile/index.php, so includes that file

  5. Since no other elements in the segments array, the contents.php file in the current folder (pages/users/profile) is included.


I'm not really seeing the benefit of doing this over having functions that include components of the site (e.g. include_header(), include_footer(), etc.), so I conclude that I'm doing something terribly wrong. I'm just not sure what it is.

© Stack Overflow or respective owner

Related posts about php

Related posts about Implementation