কোনও রেইজেক্স বা কলব্যাকের প্রয়োজন নেই। প্রায় সমস্ত কাজ ইউকওয়ার্ড দিয়ে করা যেতে পারে:
function dashesToCamelCase($string, $capitalizeFirstCharacter = false)
{
$str = str_replace(' ', '', ucwords(str_replace('-', ' ', $string)));
if (!$capitalizeFirstCharacter) {
$str[0] = strtolower($str[0]);
}
return $str;
}
echo dashesToCamelCase('this-is-a-string');
আপনি যদি পিএইচপি> = 5.3 ব্যবহার করেন তবে আপনি স্ট্র্টলওয়ারের পরিবর্তে lcfirst ব্যবহার করতে পারেন।
হালনাগাদ
পিএইচপি 5.4.32 / 5.5.16 এ ইউক্যাওয়ার্ডগুলিতে একটি দ্বিতীয় প্যারামিটার যুক্ত করা হয়েছিল যার অর্থ আমাদের প্রথমে ড্যাশগুলি স্পেসে পরিবর্তন করার দরকার নেই (এটি দেখানোর জন্য লার্স এবার্ট এবং পিটারমকে ধন্যবাদ)। আপডেট হওয়া কোডটি এখানে:
function dashesToCamelCase($string, $capitalizeFirstCharacter = false)
{
$str = str_replace('-', '', ucwords($string, '-'));
if (!$capitalizeFirstCharacter) {
$str = lcfirst($str);
}
return $str;
}
echo dashesToCamelCase('this-is-a-string');
if (!$capitalizeFirstCharacter) { $str = lcfirst($str); }