View Single Post
ישן 17-02-09, 08:25   # 13
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 37
הודעות: 710

vadimg88 לא מחובר  

הסקריפט עודכן (הפוסט עודכן גם כן עם הסקריפט החדש)

הנה החדש:

PHP קוד:
<?php

/**
* Get currency rate based on the currency
* Var passed to the function
*
* Accepted vars are dollar, euro, pound, yen
*
* @param string $currency
* @return float
*/
function GetChangeRate$currency 'dollar' )
{
    
# Define vars used
    
$xml_object = new stdClass();
    
$url 'http://www.bankisrael.gov.il/currency.xml';
    
$contents '';
    
$rate '';
    
$last_update date('d/m/Y');

    
# Get xml data
    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL$url);
    
curl_setopt($chCURLOPT_RETURNTRANSFER1);
    
$contents curl_exec ($ch);
    
curl_close ($ch);

    
# Create parser
    
$xml_object simplexml_load_string($contents);
    
    
# What do we want to show?
    
switch ( $currency )
    {
        case 
'dollar':
            
$rate floatval($xml_object->CURRENCY[0]->RATE);
            break;

        case 
'pound':
            
$rate floatval($xml_object->CURRENCY[1]->RATE);
            break;

        case 
'yen':
            
$rate floatval($xml_object->CURRENCY[2]->RATE);
            break;

        case 
'euro':
            
$rate floatval($xml_object->CURRENCY[3]->RATE);
            break;

        default:
            
$rate floatval($xml_object->CURRENCY[0]->RATE);
            break;
    }
    
    
# Get last updated time
    
if( $xml_object->LAST_UPDATE )
    {
        
$last_update strtolower($xml_object->LAST_UPDATE);
    }
    
    return array(
'rate' => $rate'last_update' => $last_update);
}


# Display
print_r(GetChangeRate('euro'));
מה שזה יחזיר עכשיו זה מערך עם 2 אלמנטים אחד בשם rate שיחזיק את שער מטבע החוץ שבקשתם, והאלמנט השני בשם last_update יגיד מתי פעם אחרונה זה עודכן (זה יגיע ישירות מהקובץ של בנק ישראל, אז ברגע שהם יעדכנו אותו זה יתעדכן גם אצלכם אוטומטית). כמו כן הורדתי את ה TYPECASTING (למרות שאני בטוח שמי שדיווח על בעיה שזה מציג לו float זה בגלל שיש שם var_dump ו VARֹDUMP מציג גם את ה TYPE של אותו ערך, אז להבא תנסו לשחק עם זה קצת ולהבין במה מדובר לפני שמדווחים) בכל מקרה החלפתי את זה ב PRINT_R זה כרגע אמור לעבוד כמו שצריך.
  Reply With Quote