У меня есть эта функция:
function map(){
$address = mashhad; // Google HQ
$prepAddr = str_replace(' ','+',$address);
$geocode=file_get_contents('http://maps.google.com/maps/api/geocode/json?address='.$prepAddr.'&sensor=false');
$output= json_decode($geocode);
$latitude = $output->results[0]->geometry->location->lat;
$longitude = $output->results[0]->geometry->location->lng;
$ogt=owghat($month , $day , $longitude , $latitude , 0 , 1 , 0);
}
и мне нужно использовать форму $ ogt в другой функции, возможно ли, что объявил ogt в качестве публичной переменной, и если это возможно, как я могу это сделать?
Вы можете установить его как глобальный в функции:
function map() {
//one method of defining globals in a function
$GLOBALS['ogt'] = owghat($moth, $day, $longitude, $latitude, 0, 1, 0);
// OR
//the other way of defining a global in a function
global $ogt;
$ogt = owghat($month, $day, $longitude, $latitude, 0, 1, 0);
}
НО это не тот способ, которым вы должны идти по этому поводу. Если нам нужна переменная из функции, мы просто возвращаем ее из функции:
function map() {
$ogt = owghat($month, $day, $longitude, $latitude, 0, 1, 0);
return $ogt;
}
$ogt = map(); //defined in global scope.
Если вы объявите $ogt
вне этой функции, это будет глобальным для работы, которую вы делаете. Вы также можете вызвать функцию из map()
с $ogt
как часть звонка. Это действительно зависит от того, что вы делаете. Вы также можете просто объявить переменную как общедоступную, как в C #. Я бы порекомендовал это из руководства PHP:
вы можете объявить переменную $ ogt как глобальную переменную
Источник: