0

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;

これを正しく実現するのに役立つアイデアはありますか?

4

1 に答える 1

1

他に試してみませんか?

  if (preg_match('/^[0-9]{8}OL/', $sku))       $has_online      = true;   
  else if (preg_match('/^[0-9]{8}WB/', $sku))       $has_WB     = true;   
  else if (preg_match('/^[0-9]{8}[A-Z]{2}/', $sku)) $has_classroom   = true;
于 2012-05-10T20:57:52.193 に答える