Jaime Neto | desenvolvimento para web

maio/17

17

Converter CamelCase e snake_case


Algumas vezes precisamos converter textos em CamelCase para snake_case, ou o contrário. Por exemplo, digamos que você use o nome dos atributos de uma classe em camelCase e os campos da tabela em camel_case, e em algum momento do seu código você precise converter esses nomes. Então, eis as funções PHP que você precisa para essas conversões:

/**
 * Converte um string de CamelCase para snake_case
 * 
 * @param string $string
 * @return string
 */
 public function camel2Snake($string) 
 {
     $string = preg_replace('/([a-z])([A-Z])/', '$1_$2', $string);
     return strtolower($string);
 }
 /**
 * Converte snake_case para CamelCase. Por padrão converte para 
 * UpperCamelCase, mas também pode converter para lowerCamelCase, 
 * usando true no segundo argumento.
 * 
 * @param string $string
 * @param boolean $lower [default=false]
 * @return string
 */
 public function snake2Camel($string, $lower=false) 
 {
     $string = ucwords(str_replace('_',' ',$string));
     $string = str_replace(' ', '', $string);
     return $lower ? lcfirst($string) : $string;
 }

No tags

No comments yet.

Leave a Reply

<<

>>

Theme Design by devolux.nh2.me