Skip to content

Instantly share code, notes, and snippets.

@blade93ny
Created April 30, 2018 08:13
Show Gist options
  • Save blade93ny/1e977c3e4afd8c9d9bd386b1906b3c22 to your computer and use it in GitHub Desktop.
Save blade93ny/1e977c3e4afd8c9d9bd386b1906b3c22 to your computer and use it in GitHub Desktop.

Revisions

  1. @paulferrett paulferrett created this gist Dec 27, 2013.
    30 changes: 30 additions & 0 deletions camel_case_functions.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,30 @@
    <?php
    /**
    * Translates a camel case string into a string with
    * underscores (e.g. firstName -> first_name)
    *
    * @param string $str String in camel case format
    * @return string $str Translated into underscore format
    */
    function from_camel_case($str) {
    $str[0] = strtolower($str[0]);
    $func = create_function('$c', 'return "_" . strtolower($c[1]);');
    return preg_replace_callback('/([A-Z])/', $func, $str);
    }

    /**
    * Translates a string with underscores
    * into camel case (e.g. first_name -> firstName)
    *
    * @param string $str String in underscore format
    * @param bool $capitalise_first_char If true, capitalise the first char in $str
    * @return string $str translated into camel caps
    */
    function to_camel_case($str, $capitalise_first_char = false) {
    if($capitalise_first_char) {
    $str[0] = strtoupper($str[0]);
    }
    $func = create_function('$c', 'return strtoupper($c[1]);');
    return preg_replace_callback('/_([a-z])/', $func, $str);
    }
    ?>