fork download
  1. <?php
  2. $Discounts=array(0=>array('FromArea'=>1,'ToArea'=>0,'Master'=>0,'Slave'=>0),
  3. 1=>array('FromArea'=>0,'ToArea'=>10,'Master'=>5,'Slave'=>0),
  4. 2=>array('FromArea'=>5,'ToArea'=>0,'Master'=>0,'Slave'=>8),
  5. 3=>array('FromArea'=>0,'ToArea'=>0,'Master'=>1,'Slave'=>2),
  6. 4=>array('FromArea'=>0,'ToArea'=>1,'Master'=>7,'Slave'=>5),
  7. );
  8.  
  9.  
  10.  
  11. function DiscountAmount($FromArea, $ToArea, $Master, $Slave)
  12. {
  13. global $Discounts;
  14. if(empty($FromArea) && empty($ToArea) && empty($Master) && empty($Slave)) return false;
  15.  
  16. $json = json_encode($Discounts);
  17.  
  18. $reg = "/\{";
  19.  
  20. if(!empty($FromArea)) $reg .= "(?:[^\}]*\"FromArea\":{$FromArea})";
  21. if(!empty($ToArea)) $reg .= "(?:[^\}]*\"ToArea\":{$ToArea})";
  22. if(!empty($Master)) $reg .= "(?:[^\}]*\"Master\":{$Master})";
  23. if(!empty($Slave)) $reg .= "(?:[^\}]*\"Slave\":{$Slave})";
  24.  
  25. $reg .= "[^\}]*\}/";
  26.  
  27. return preg_match($reg, $json);
  28. }
  29.  
  30. var_dump(DiscountAmount(1, 0, 0, 0));
Success #stdin #stdout 0.02s 52472KB
stdin
Standard input is empty
stdout
int(1)