php中处理mysql级联删除

有的mysql版本不支持事务,也就没有外键级联限制,

在mysql中没有创建外键,从而在删除方面很难做到级联删除,可用一个递归方法获得本条记录所能级联的所有记录。

从而实现级联删除

public function getids($id){
  $d_ids='';
  $ds=$this->org_db->select('parentid='.$id);
  foreach ($ds as $d){
   $d_ids.=$d['id'].',';
  }
  if(strlen($d_ids)!=0){
      $dids=substr($d_ids,0,strlen($d_ids)-1);
   $ids=explode(',',$dids);
  foreach($ids as $d){
    $d_ids.=$this->getids($d);
    echo $d_ids;
   }
  }
  return $d_ids;
 }

你可能感兴趣的:(mysql)