2014-10-20 2 views
0

У меня есть некоторые случаи «еще если» на странице. Теперь я хочу сделать только одну функцию, чтобы длина кода могла быть сокращена.как разбить его на функцию

elseif ($domain == 1 && $case == 2) { 
$result = array(); 
    foreach ($array as $data) { 
     $result[] = $data; 
    } 

    foreach ($result as $index) { 
     foreach ($index as $value) { 
      $resultArr[] = explode('  ', $value[0]); 
     } 
    } 
    $valuesArr = array(); 
    //////********Below code is repeated in this page **************/////// 

    $sql = "INSERT INTO LEAD_TMP_UPLOAD (LEAD_SOURCE , LAST_NAME , EMAIL , MOBILE , IVR_NUMBER , RECORDING_URL , COUNTRY , LEAD_STATUS , DEAD_REASON , PROJECT_NAME 
, CUSTOMER_QUERY , DESCRIPTION , LEAD_OWNER , FOLLOW_UP_DATE , CITY_INTERESTED_IN , LOCALITY , UPLOAD_DATE , UPLOAD_BY_ID , REFERED_BY 
, REFERED_LEAD_ID , SUB_BROKER_DETAIL , BUDGET , USER_ENQUIRY_TIME , LEAD_TYPE , INSERT_STATUS , PROCESSING_STATUS , UPDATED_AT , LEAD_STAGE) values "; 
     foreach ($resultArr as $data) { 

      $lead_source = "99Acres"; 
     $name = trim(strip_tags(str_replace('Name : ', '', $data[0]))) ; 
     $emailId = trim(strip_tags(str_replace(array('Email : ', 'Verified'), '', $data[1]))); 
     $contactNo = trim(strip_tags(str_replace(array('Phone number : ', '  Verified'), '', $data[2]))); 
     $ivr_no = ""; //null 
     $recording_url = "";  //null 
     $country = ""; 
     $lead_status = "New"; 
     $dead_reason = "";  //null 
     $project_name = trim(strip_tags($value[2]));; 
     $customer_query = " "; 
     $description = " "; 
     $lead_owner = "sachin.sharma"; 
     $follow_up_date = date('Y-F-j h:i:s A');   //current date 
     $city_interested_in = ""; 
     $locality = ""; 
     $upload_date = date('Y-F-j h:i:s A');   //current date 
     $upload_by_id = 2; 
     $reffered_by = 0; 
     $reffered_lead_id = 0; 
     $sub_broker_detail = 0; 
     $budget = "";       //max range 
     $user_enquiry_time = "";      //mailbox time 
     $lead_type = ""; 
     $insert_status = ""; 
     $processing_status = ""; 
     $updated_at = ""; 
     $lead_stage = "cold"; 

    $valuesArr[] .= "('$lead_source', '$name', '$emailId', '$contactNo', '$ivr_no', '$recording_url', '$country', '$lead_status', '$dead_reason', '$project_name ', '$customer_query', '$description', '$lead_owner', '$follow_up_date', '$city_interested_in', '$locality', '$upload_date', '$upload_by_id', '$reffered_by', '$reffered_lead_id', '$sub_broker_detail' , '$budget' , '$user_enquiry_time', '$lead_type', '$insert_status', '$processing_status', '$updated_at', '$lead_stage')"; 
     } 
    $sql .= implode(',', $valuesArr); 
    echo $sql; 

//////********Till Here, code is repeated in this page **************/////// 
} 

пожалуйста, подскажите, как я могу сломать выше кода в другую функцию, так что я могу сохранить свою длину кода с того же кода повторения.

+0

Не могли бы вы немного объяснить это, поскольку я новичок в этом. – shweta

+0

@ Gunaseelan Я упомянул в комментариях ////// ******** Ниже приведен код на этой странице ************** /////// эта часть кода повторяется на моей php-странице. Поэтому для сокращения кода я хочу сделать функцию. Я ясно дал понять? – shweta

ответ

0

Вы имеете в виду что-то вроде этого?

elseif ($domain == 1 && $case == 2) { 
$result = array(); 
foreach ($array as $data) { 
    $result[] = $data; 
} 

foreach ($result as $index) { 
    foreach ($index as $value) { 
     $resultArr[] = explode('  ', $value[0]); 
    } 
} 
$valuesArr = array(); 

_insert($resultArr); 

} 

function _insert($resultArr){ 

    $sql = "INSERT INTO LEAD_TMP_UPLOAD (LEAD_SOURCE , LAST_NAME , EMAIL , MOBILE ,   IVR_NUMBER , RECORDING_URL , COUNTRY , LEAD_STATUS , DEAD_REASON , PROJECT_NAME 
    ,   CUSTOMER_QUERY , DESCRIPTION , LEAD_OWNER , FOLLOW_UP_DATE , CITY_INTERESTED_IN , LOCALITY , UPLOAD_DATE , UPLOAD_BY_ID , REFERED_BY 
    , REFERED_LEAD_ID , SUB_BROKER_DETAIL , BUDGET , USER_ENQUIRY_TIME , LEAD_TYPE , INSERT_STATUS ,  PROCESSING_STATUS , UPDATED_AT , LEAD_STAGE) values "; 
    foreach ($resultArr as $data) { 

     $lead_source = "99Acres"; 
    $name = trim(strip_tags(str_replace('Name : ', '', $data[0]))) ; 
    $emailId = trim(strip_tags(str_replace(array('Email : ', 'Verified'), '', $data[1]))); 
    $contactNo = trim(strip_tags(str_replace(array('Phone number : ', '  Verified'), '',  $data[2]))); 
    $ivr_no = ""; //null 
    $recording_url = "";  //null 
    $country = ""; 
    $lead_status = "New"; 
    $dead_reason = "";  //null 
    $project_name = trim(strip_tags($value[2]));; 
    $customer_query = " "; 
    $description = " "; 
    $lead_owner = "sachin.sharma"; 
    $follow_up_date = date('Y-F-j h:i:s A');   //current date 
    $city_interested_in = ""; 
    $locality = ""; 
    $upload_date = date('Y-F-j h:i:s A');   //current date 
    $upload_by_id = 2; 
    $reffered_by = 0; 
    $reffered_lead_id = 0; 
    $sub_broker_detail = 0; 
    $budget = "";       //max range 
    $user_enquiry_time = "";      //mailbox time 
    $lead_type = ""; 
    $insert_status = ""; 
    $processing_status = ""; 
    $updated_at = ""; 
    $lead_stage = "cold"; 

    $valuesArr[] .= "('$lead_source', '$name', '$emailId', '$contactNo', '$ivr_no', '$recording_url', '$country', '$lead_status', '$dead_reason', '$project_name ', '$customer_query', '$description', '$lead_owner', '$follow_up_date', '$city_interested_in', '$locality', '$upload_date', '$upload_by_id', '$reffered_by', '$reffered_lead_id', '$sub_broker_detail' , '$budget' , '$user_enquiry_time', '$lead_type', '$insert_status', '$processing_status', '$updated_at', '$lead_stage')"; 
    } 
    $sql .= implode(',', $valuesArr); 
    echo $sql; 
} 
+0

спасибо. но, что, если я хочу изменить параметры $ data [0], $ data [1] в каждой функции, вызывающей? который представляет собой данные, поступающие в переменные $ name, $ email. – shweta

+0

не могли бы вы помочь мне двигаться дальше? – shweta