skuにOLが含まれている場合はhas_onlineをtrueに設定し、skuにWBが含まれている場合はhas_WBをtruに設定し、skuにWBまたはOLが含まれていないがそれ以外の場合はhas_classroomをtrueに設定する必要があります。
if (preg_match('/^[0-9]{8}OL/', $sku)) $has_online = true;
if (preg_match('/^[0-9]{8}WB/', $sku)) $has_WB = true;
if (preg_match('/^[0-9]{8}[A-Z]{2}/', $sku)) $has_classroom = true;
has_classroomの部分に問題があります。また、OLまたはWBコースの場合もhas_classroomを設定します。
Skusは次のようにフォーマットされます。
20120531TXCP
20120531OLCP
20120531WBCP
20120531FLAO
20120531NVAR
このようにやり直しましたが、満足できません。
$wb_course = preg_match('/^[0-9]{8}WB/', $sku);
$ol_course = preg_match('/^[0-9]{8}OL/', $sku);
if ($ol_course) $has_online = true;
if ($wb_course) $has_WB = true;
if (preg_match('/^[0-9]{8}[A-Z]{2}/', $sku)
&& !$wb_course
&& !$ol_course) $has_classroom = true;
これを正しく実現するのに役立つアイデアはありますか?