09/10/2018, 17:47

[Q] 1 thắc mắc về biến trong PHP

Tôi tạo 2 file php: 1.php và 2.php , trong 2.php có include(1.php) vào để sử dụng nhưng có sai sót ,
Đây là nội dung file 1.php:
PHP Code:
<?
$s1='String 1';
$s2='String 2';
$s3='String 3';
$s4='String 4';
function global_all()
{
  global $s1,$s2,$s3,$s4;
}
//---------------------
global $s1,$s2,$s3,$s4;
?>
Đây là nội dung file 2.php:
PHP Code:
<?
include "1.php";
global_all();
function from_user()
{
  global_all();
  echo "
  <form action="2.php?ACT=asd" method=POST>
    <input type=submit value=Go>
  </form>";
}
function hehe()
{
  global_all();                    //---------------------
  echo "s1 in hehe:'$s1'<br>";     // Why $s1 == ' ??????
}                                  //---------------------
//------------------------------------
switch($ACT)
{
  case 'asd':
    global_all();
    echo "s1 in switch:'$s1'<br>";
    hehe();
    break;
  default:
    global_all();
    from_user();
    break;
}
?>
Trong đó , file 1.php chỉ định $s1='String 1' nhưng 2.php include vào thì $s1=' , ở trong cấu trúc switch thì $s1='String 1' nhưng ở trong switch , gọi hàm hehe() thì $s1='String 1'.

Ai biết về việc này giúp tớ được không ? Đa tạ nhá
crab viết 19:54 ngày 09/10/2018
Edit your files below, let view and run it yourself

file 1.php:
PHP Code:
<?
$s1='String 1';
$s2='String 2';
$s3='String 3';
$s4='String 4';
?>
file 2.php
PHP Code:
<?
include "1.php";
function from_user()
{
  global $s1,$s2,$s3,$s4;
  echo "
  <form action=\"2.php?ACT=asd\" method=POST>
    <input type=submit value=Go>
  </form>";
}

function hehe()
{
  global $s1,$s2,$s3,$s4;
  echo "s1 in hehe:$s1<br>";
}

switch($ACT)
{
  case 'asd':
    echo "s1 in switch:$s1<br>";
    hehe();
    break;
  default:
    from_user();
    break;
}
?>
Nicky viết 20:02 ngày 09/10/2018
Cái Gbobal nicky thấy cũng không cần thiết.
dugeon03 viết 20:01 ngày 09/10/2018
Cách của CRAB mình đã biết rồi , nhưng số lượng biến cần global rất lớn nên phải làm thành 1 hàm trong 1.php .
Có cách nào khác hơn không?
crab viết 19:52 ngày 09/10/2018
View files below yourself

file 1.php:
PHP Code:
<?
$s1='String 1';
$s2='String 2';
$s3='String 3';
$s4='String 4';
?>
file 2.php:
PHP Code:
<?
include "1.php";

test_var();
function test_var(){
     include "global_all.php"; //Note here :-)

     echo "S1 in here: $s1 <br>";
     echo "S2 in here: $s2 <br>";
}

?>
file global_all.php:
PHP Code:
<?php
    
global $s1,$s2,$s3,$s4;
?>
Understand?
dugeon03 viết 19:59 ngày 09/10/2018
Yes , very thanks ,crab
crab viết 20:00 ngày 09/10/2018
OK rồi hả?
internetvn viết 19:50 ngày 09/10/2018
hay wá nhỉ :P
Bài liên quan
0