Grow your CSS skills. Land your dream job.

Last updated on:

Get Current File Name

<?php
    $pageName = basename($_SERVER['PHP_SELF']);
?>

Potential use:

<body id="body_<?php echo $pageName; ?>">

Append ID to body to do different CSS styles on different pages.

Comments

  1. Permalink to comment#

    Chris your snippets section is working. I found this on Google it was just what I needed.

  2. Zlatan Halilovic
    Permalink to comment#

    sweet

  3. Permalink to comment#

    yeah! this is working, thank you.

  4. Permalink to comment#

    echo $pageName = basename($_SERVER[‘SCRIPT_NAME’]);

    It will give current file name… as index.php or about.php

  5. But you will have ‘.php’ as id or class. If you want get only name befor the ‘.php’ here is de code:

    // Recuperando o nome do arquivo sem '.php'
      $currentFile = $_SERVER["PHP_SELF"];
      $parts = Explode('/', $currentFile);
      $parts = $parts[count($parts) - 1];
      $parts = Explode('.', $parts);
      $pageName = $parts[0];
    
    • Maxi
      Permalink to comment#

      I agree. Simply I enclose files with regular dot(s) in the name:

      $currentFile = $_SERVER["PHP_SELF"];
      $parts = explode('/', $currentFile);
      $parts = $parts[count($parts) - 1];
      $name = explode('.', $parts);
      unset ($name[count($name) - 1]);
      $pageName = implode('.',$name);
      
  6. Hilco
    Permalink to comment#

    better yet:
    echo basename($_SERVER['REQUEST_URI'], '.php');

    • nico
      Permalink to comment#

      great, thank you

    • NoOneOfConsequence
      Permalink to comment#

      Yo…Hilco – thanks.

      This rocks for my purposes…dynamically searching a database for stuff that’s only meant to be shown on certain pages.

  7. echo substr(
      __FILE__
      , strrpos( __FILE__ , '/' )
      , strrpos( __FILE__ , '.' )
    );

    ? http://php.net/manual/en/language.constants.predefined.php .

  8. You have an error in your code, $_SERVER[PHP_SELF] instead of $_SERVER[‘PHP_SELF’]

  9. hey
    Permalink to comment#

    never know how these php snippets work

    any link to demo to show few site, with the screencapture on the SERVER code that php was implemented

    got very confuse, that these things work or NOT

  10. Johnslegers
    Permalink to comment#

    A very useful feature that seems totally absent in Javascript.

Leave a Comment

Posting Code

Markdown is supported in the comment area, so you can write inline code in backticks like `this` or multiline blocks of code in in triple backtick fences like this:

```
<div>Example code</div>
```

You don't need to escape code in backticks, Markdown does that for you. If anything screws up, contact us and we can fix it up for you.

*May or may not contain any actual "CSS" or "Tricks".