Làm cách nào để chuyển biến JavaScript sang PHP trong cùng một trang?

Khi bạn có một biến PHP trên cùng một trang với mã JavaScript, bạn có thể sử dụng


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2 để chuyển trực tiếp biến đó từ PHP sang JavaScript

Giả sử bạn có một tệp


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
3 với nội dung sau


$name = "Nathan"; 
?>

<h1>Passing PHP variable to JavaScripth1>
<h2 id="result">h2>
<script>
    const data = " echo $name; ?>";
    const result = document.getElementById("result");
    result.innerText = data;
script>

Khi bạn chạy đoạn mã trên, giá trị biến


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
0 sẽ được chuyển sang biến

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
1 trong JavaScript

Để chứng minh rằng nó đã hoạt động, giá trị


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
1 sau đó được gán làm nội dung thẻ

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
3. Trình duyệt hiển thị đầu ra sau

PHP echo variable in JavaScriptBiến tiếng vang PHP trong JavaScript

Với hàm


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2, bạn có thể xuất ra một chuỗi bằng cách thêm các ký hiệu trích dẫn (đơn hoặc kép) trước thẻ

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
5 ở trên

Nếu bạn đang gửi một giá trị


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
6, thì bạn không cần ký hiệu trích dẫn


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>

Khi bạn gửi một mảng PHP, bạn cần gọi hàm


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
7 trước khi chuyển nó tới JavaScript


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>

Và đó là cách bạn chuyển một biến PHP sang JavaScript bằng cách gọi hàm


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2

Tiếp theo, hãy xem cách sử dụng DOM để chuyển các biến PHP sang JavaScript

Sử dụng DOM để chuyển các biến PHP sang JavaScript

Đôi khi, bạn có thể cần các biến PHP sau khi người dùng đã thực hiện một hành động như nhấp vào nút

Bạn cũng có thể có nhiều biến PHP mà bạn muốn chuyển và trong khi


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2 hoạt động để gửi dữ liệu PHP tới JavaScript, bạn có thể muốn một giải pháp rõ ràng hơn

Bên cạnh việc gọi hàm


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2, bạn cũng có thể sử dụng thẻ HTML DOM để lưu trữ dữ liệu PHP

Đây là một ví dụ


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
0

Bằng cách giữ dữ liệu PHP của bạn trong các thẻ DOM như được hiển thị ở trên, sau đó bạn có thể truy xuất dữ liệu bằng JavaScript như sau


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
1

Phương pháp này tương tự như sử dụng trực tiếp


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2, nhưng được coi là rõ ràng hơn vì bạn

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2 tới DOM thay vì các biến JavaScript

Bạn cũng có thể chọn thời điểm JavaScript sẽ truy xuất dữ liệu PHP. Đây không phải là trường hợp khi bạn


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2 biến JavaScript

Sử dụng tìm nạp để lấy dữ liệu PHP từ JavaScript

Khi bạn muốn tách mẫu PHP khỏi mã JavaScript của mình, thì bạn có thể sử dụng API tìm nạp JavaScript

API tìm nạp được sử dụng để gửi yêu cầu HTTP, tương tự như AJAX và XMLHTTPRequest. Điều này cho phép bạn truy xuất tài nguyên từ mọi nơi trên Internet

Tìm nạp có thể được sử dụng để truy xuất dữ liệu PHP bằng JavaScript. Giả sử bạn có một tệp PHP tên là


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
4 với nội dung sau


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
3

Khi bạn đã có sẵn tệp PHP, hãy tạo một tệp


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
3 nơi bạn sẽ tìm nạp dữ liệu từ đó

Thêm thẻ


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
6 như hình bên dưới


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
5

Hàm


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
7 sẽ gửi yêu cầu HTTP đến tệp

$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
4

Sau đó, hàm


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
9 sẽ phân tích cú pháp phản hồi dưới dạng đối tượng JSON. Cuối cùng, đối tượng JSON trả về sẽ được gán làm nội dung của thẻ

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
00 ở trên

Đầu ra sẽ như sau

Retrieve PHP data with fetchTruy xuất dữ liệu PHP bằng tìm nạp

Và đó là cách bạn chuyển các biến hoặc dữ liệu PHP sang JavaScript bằng cách sử dụng hàm


$array = [1, 2, 3]; 
?>

<script>
    const data =  echo json_encode($array); ?>;
script>
7

Không giống như hai phương thức còn lại, phương thức này tạo một yêu cầu HTTP, vì vậy nó sẽ có độ trễ trước khi dữ liệu được tìm nạp

Bạn nên sử dụng Fetch API khi dữ liệu PHP của bạn yêu cầu xử lý phức tạp trước khi chuyển nó sang JavaScript

Phần kết luận

Để chuyển các biến và dữ liệu PHP sang JavaScript, bạn cần làm cho dữ liệu có thể truy cập được vào JavaScript

Bạn có thể


// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
2 dữ liệu trực tiếp vào biến JavaScript hoặc bạn có thể giữ dữ liệu trong DOM trước khi truy xuất nó bằng đối tượng JavaScript

// 👇 sending a string
$name = "Nathan"; 
?>

<script>
    const data = " echo $name; ?>";
script>


// 👇 sending an int
$age = 29; 
?>

<script>
    const data =  echo $age; ?>;
script>
03

Đối với dữ liệu có quá trình xử lý phức tạp, bạn có thể tạo một tệp riêng để xử lý dữ liệu PHP của mình. Bất kỳ phần nào trong ứng dụng của bạn yêu cầu dữ liệu đều có thể gửi yêu cầu HTTP để tìm nạp dữ liệu

Chúng ta có thể gán biến JavaScript cho biến PHP không?

Javascript sẽ được diễn giải trong trình duyệt của Máy khách và bạn không thể gán nó cho biến PHP được diễn giải trên MÁY CHỦ. Giải pháp mang tính khả thi. Bạn có thể gửi giá trị Javascript qua ajax hoặc thông qua gửi biểu mẫu.

Làm cách nào để đặt giá trị biến JavaScript trong biến PHP?

sử dụng tài liệu. cookie và $_COOKIE để gán biến JS cho biến PHP. Tài liệu. cookie được sử dụng để lưu trữ cookie trong javascript và $_COOKIE là biến siêu toàn cầu PHP được sử dụng để truy cập cookie

PHP và JavaScript có thể chia sẻ các biến không?

Chúng tôi có thể chuyển dữ liệu từ PHP sang JavaScript theo hai cách tùy theo tình huống . Đầu tiên, chúng ta có thể truyền dữ liệu bằng toán tử gán đơn giản nếu chúng ta muốn thực hiện thao tác trên cùng một trang. Khác chúng ta có thể chuyển dữ liệu từ PHP sang JavaScript bằng Cookies.

Bạn có thể sử dụng JavaScript và PHP cùng nhau không?

Bên cạnh đó, sự tương đồng giữa PHP và JavaScript, hai ngôn ngữ này là sự kết hợp mạnh mẽ khi được sử dụng cùng nhau . Một số lượng lớn các trang web kết hợp PHP và JavaScript – JavaScript cho front-end và PHP cho back-end vì chúng cung cấp nhiều hỗ trợ cộng đồng, các thư viện khác nhau cũng như một cơ sở mã rộng lớn của các khung.