我有这个功能:
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声明为公共变量,如果可能,我该怎么做?
答案 0 :(得分:2)
如果您在该函数之外声明$ogt
,那么它对您正在进行的工作将是全局的。您还可以通过map()
调用$ogt
的函数作为通话的一部分。这真的取决于你在做什么。您也可以在C#中将变量声明为公共变量。我会从PHP手册中推荐这个:
答案 1 :(得分:1)
您可以在函数中将其设置为全局:
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.
答案 2 :(得分:0)