Camelcase는 첫 번째 단어가 소문자로 시작하는 이름 지정 규칙이며, 두 번째 단어부터 시작하여 각 단어에는 대문자가 있습니다. 이름 지정 방법은 예를 들어 낙타 케이스처럼 보입니다 : Camelcase.
PHP에서 변수 이름에 짧은 수평 선 (`-` 예를 들어:
$stu_id = $student->{'stu-id'};
그러나 짧은 수평선을 낙타 명명법으로 변환하면 DOT 번호를 직접 사용하여 속성에 액세스 할 수 있습니다.
$stu_id = $student->stuId;
따라서 코드를 더 간단하고 읽기 쉽게 만듭니다.
'preg_replace'기능을 사용하여 정규 표현식을 통해 짧은 수평선에 낙타 명명법을 구현하십시오. 예는 다음과 같습니다.
$str = 'student-name';
$str = preg_replace_callback('/-(\w)/', function($matches) {
return strtoupper($matches[1]);
}, $str);
echo $str; // 산출 studentName
이 코드는 문자열의 짧은 수평선 후 문자를`preg_replace_callback` 기능을 통해 대문자로 변환하여 낙타 명명법을 실현합니다.
또 다른 방법은`str_replace` 기능을 사용하고 먼저 짧은 수평선을 공백으로 교체 한 다음 각 단어의 첫 글자를 대문자로 대체하고 마지막으로 공백을 제거하는 것입니다. 코드 예제는 다음과 같습니다.
$str = 'student-name';
$str = str_replace('-', ' ', $str);
$str = ucwords($str);
$str = str_replace(' ', '', $str);
echo $str; // 산출 studentName
이 코드는 먼저 짧은 수평선을 공간으로 대체 한 다음`ucwords '함수를 사용하여 각 단어의 첫 번째 문자를 대문자로 만들고 마지막으로 공간을 제거합니다.
Symfony의 문자열 구성 요소는`Camelize '방법을 제공하는데,이 방법은 짧은 수평선을 낙타 명명법으로 쉽게 변환 할 수 있습니다. 예는 다음과 같습니다.
use Symfony\Component\String\Inflector\EnglishInflector;
$inflector = new EnglishInflector();
$str = 'student-name';
$str = $inflector->camelize($str);
echo $str; // 산출 studentName
이 코드에서는`symfony \ component \ string \ inl
PHP에는`preg_replace`,`str_replace` 및 'symfony String 구성 요소'와 같은 방법을 사용하는 것을 포함하여 짧은 수평선을 낙타 명명법으로 변환하는 방법에는 여러 가지가 있습니다. 실제 요구에 따라 코드의 가독성과 유지 관리를 최적화하는 가장 적합한 방법을 선택할 수 있습니다.