예제 #1
0
 /**
  * Repair HTML/XML and return array
  * @param  string        $xml XML for processing
  * @return array|boolean      Array on success, false on failure
  */
 public static function htmlFixXmlToArray($xml)
 {
     $xmltoarray = new xmltoarray_parser_htmlfix();
     //create instance of class
     $xmltoarray->xmlparser_setoption(XML_OPTION_SKIP_WHITE, 1);
     //set options same as xml_parser_set_option
     $xmltoarray->xmlparser_setoption(XML_OPTION_CASE_FOLDING, 0);
     $xmltoarray->xmlparser_fix_into_struct(base64_decode($xml));
     //fixes html values for XML
     $array = $xmltoarray->createArray();
     //creates an array with fixed html values
     foreach ($array as $key => $value) {
         $array[$key] = $xmltoarray->fix_html_entities($value);
         //returns proper html values
     }
     if (array_key_exists('NewDataSet', $array) && array_key_exists('Table', $array['NewDataSet'])) {
         $array = $array['NewDataSet']['Table'];
     } else {
         $array = false;
     }
     return $array;
 }
$xml1_0['patientInformationRequester']['UserType'] = 'D';
$xml1_0['patientInformationRequester']['UserId'] = $user_details['id'];
$xml1_0['patientIdType'] = '';
$xml1_0['includeSchema'] = '';
$xml = $client->GetPatientFullMedicationHistory6($xml1_0);
$xml_response = $xml->GetPatientFullMedicationHistory6Result->XmlResponse;
$xml_response_count = $xml->GetPatientFullMedicationHistory6Result->RowCount;
$xml_response = base64_decode($xml_response);
$xmltoarray = new xmltoarray_parser_htmlfix();
//create instance of class
$xmltoarray->xmlparser_setoption(XML_OPTION_SKIP_WHITE, 1);
//set options same as xml_parser_set_option
$xmltoarray->xmlparser_setoption(XML_OPTION_CASE_FOLDING, 0);
$xmltoarray->xmlparser_fix_into_struct($xml_response);
//fixes html values for XML
$array = $xmltoarray->createArray();
//creates an array with fixed html values
foreach ($array as $key => $value) {
    $array[$key] = $xmltoarray->fix_html_entities($value);
    //returns proper html values
}
$medArray = $array['NewDataSet']['Table'];
//print_r($medArray);die;
sqlQuery("update prescriptions set active=0 where patient_id=? and erx_source='1'", array($patientid));
$j = 0;
for ($i = 0; $i < sizeof($medArray); $i++) {
    $provider = sqlQuery("select id from users where username=?", array($medArray[$i]['ExternalPhysicianID']));
    if ($medArray[$i]['DosageForm']) {
        $qin = sqlStatement("SELECT option_id FROM list_options WHERE list_id='drug_form' AND title = ?", array($medArray[$i]['DosageForm']));
        $rin = sqlFetchArray($qin);
        if (sqlNumRows($qin) <= 0) {