<?php
.....省略
$number = mt_rand(1000000000,9999999999);
$username = $_POST['username'];
......省略
function getusername(){
global $username;
echo $username;
}
function getnumber(){
global $number;
echo $number;
}
?>
我在外部调用getnumber()和getusername()得到的并不是第一次生成的随机数
而是另一个十位数 username也不是post穿过来的 是空

php函数返回问题,新生求解答
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- havedream_one 2016-05-08 06:19关注
<html> 2 <body> 3 hello world<br/> 4 <form action="login.php" method="POST"> 5 <input name="username" value=""/> 6 </form> 7 <?php 8 echo "<br>=======<br>"; 9 require_once("login.php"); 10 echo "getusername:",getusername(),"<br>"; 11 echo "getnumber:",getnumber(),"<br>"; 12 echo "<br>=====<br>"; 13 ?> 14 </body> 15 </html>
<?php 2 echo "here<br>"; 3 $number = mt_rand(1000000000,9999999999); 4 echo "生成number;",$number,"<br>"; 5 $username = $_POST["username"]; 6 echo "接收username:",$username,"<br>"; 7 function getusername(){ 8 global $username; 9 echo $username,"<br>"; 10 } 11 function getnumber(){ 12 global $number; 13 echo $number,"<br>"; 14 } 15 ?>
是这样的形式吗?如果是的话
当你post到login的时候就会调用login.php一次,这样的等于$number = mt_rand(1000000000,9999999999);
$username = $_POST['username'];执行了一次,当再次require的时候又执行了一次,也就跟先前的不一样了本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报