2011-07-22 58 views
0

我想从函数getaddress获取变量$ place并将该值传递给函数breakintostrings。看来我不能得到变量$的地方。php函数变量作用域

<?php 
    $username ="1224hammer"; 
    getaddress ($username); 
    function getaddress($username) 
    { 
    $place = row['place']; 

    function format_address($record) 
     { 
     function breakintostrings($x,$y,$z) 

     } 
     breakintostrings($place,"$y","$z") 
    } 
    ?> 
+0

你错过了几大括号那里......还有'行'缺少'$' – nico

+0

这是怎么回事? – Gumbo

+0

可以解释一下你想要完成的任务吗? – erisco

回答

0

创建变量$place外的getaddress功能和使用global关键词将其导入到你的breakintostrings功能:

$place = ''; 

function getaddress($username) 
{ 
    $place = row['place']; 
} 

function breakintostrings($x,$y,$z) 
    global $place; 
    // more code 
} 
+0

我需要$ breakintostrings的地方 – karto

+0

我想把$ place作为$ X的价值在breakintostrings – karto

0

您可以通过返回变量$ place与return语句来获取值,但请不要嵌套您的函数。请

0

不要嵌套你的功能。相反,尝试这样的事:

function getaddress($username){ 
    return row['place']; // What is row? 
} 
function breakintostrings($address,$y,$z){ 
    // do whatever 
} 

$address = getaddress($username); 
breakintostrings($address,"$y","$z"); 
+0

:我明白了。但我包括很多文件,使得它如此 – karto

+0

@karto包括任何数量的文件不应该要求你鸟巢你的功能。 – wanovak

+0

谢谢你。但我必须对此进行硬编码。我已经筋疲力尽 – karto