JavaScript có thể đọc biến PHP không?

Ký hiệu "Chấm" có thể được sử dụng để tham chiếu các chế độ xem lồng nhau. Quyền Dưới đây, dữ liệu sẽ hiển thị trên

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
2

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}

Đừng mắc lỗi này trong bộ sưu tập Laravel

Tránh sử dụng chức năng trống trong bộ sưu tập Laravel

Blog. thiên tài. io

Truyền một biến PHP cho JavaScript

Nhưng trong một số trường hợp, bạn muốn chuyển một số var phía máy chủ sang JavaScript. Ví dụ: yêu cầu một số giá trị cho phân tích. Chúng ta có thể chuyển các biến bằng cách sử dụng gói Transform PHP Vars to JavaScript. Ngoài ra, chúng tôi có thể làm mà không cần sử dụng gói này

  • 1. Sử dụng kết xuất JSON
  • 2. Sử dụng Chuyển đổi PHP Vars sang gói JavaScript

1. không có gói. Sử dụng kết xuất JSON

Trong Laravel sẽ được dùng để khởi tạo một biến JavaScript

<script>
var app = {{ Js::from($array) }};
</script>

Thí dụ

Bây giờ hãy thêm dữ liệu mảng vào tuyến ứng dụng. Mảng page_data này chúng ta cần sử dụng làm JavaScript

Route::get('/', function () {
return view('welcome', ['page_data' => [
'title' => 'Home',
'price' => 20
]]);
});

Thêm Js bên dưới. từ trong chế độ xem chào mừng

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
3

<script>
var page_data = {{ Js::from($page_data) }};
</script>

mở trình duyệt và kiểm tra page_data trong bảng điều khiển

Ngừng sử dụng DateTime trong PHP

Tại sao chúng ta cần sử dụng DateTime không thay đổi trong PHP?

Blog. thiên tài. io

2. Sử dụng Chuyển đổi PHP Vars sang gói JavaScript

Cài đặt gói thông qua Composer

composer require laracasts/utilities

Thêm gói vào nhà cung cấp

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
4

________số 8_______

Tạo HomeController và gọi chế độ xem chào mừng

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
5

<?phpnamespace App\Http\Controllers;use App\Http\Controllers\Controller;
use JavaScript;
class HomeController extends Controller
{
public function index()
{
JavaScript::put([
'title' => 'Home',
'price' => 20
]);
return view('welcome');
}
}

Ngoài ra, cập nhật các tuyến đường/web. php để gọi HomeController

Route::get('/', [HomeController::class, 'index']);

Theo mặc định, gói này liên kết các biến JavaScript của bạn với chế độ xem "chân trang". Vì vậy, hãy tạo tệp lưỡi cắt chân trang trống và đưa nó vào chế độ xem chào mừng

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
6

Bạn có thể thay đổi chế độ xem chân trang bằng cách xuất bản cấu hình mặc định. Sau đó cập nhật giá trị cấu hình ‘bind_js_vars_to_this_view’ trên tệp

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
7

php artisan vendor:publish --provider="Laracasts\Utilities\JavaScript\JavaScriptServiceProvider"

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
3

public function show(Permission $permission)
{
return view('admin.permission.show', compact('permission'));
}
0

Bây giờ tiêu đề và giá có sẵn trên đối tượng cửa sổ

Phần kết luận

Sử dụng gói Biến đổi PHP Vars thành JavaScript nếu biến PHP được yêu cầu trên JavaScript trên hầu hết các trang. Nếu bạn cần một hoặc hai trang, hãy sử dụng phương thức Laravel

Sử dụng nội dung của biểu mẫu trong PHP. Tên của các thành phần của biểu mẫu cũng là các biến PHP ngay khi tập lệnh PHP là hành động của biểu mẫu

Ví dụ, mẫu hoàn chỉnh


    
    

"mytext" là tên được đặt cho đối tượng nhập văn bản ở dạng trên
Tập lệnh PHP truy xuất tên dưới dạng khóa trong mảng $_POST

Trên thực tế, khi một tệp được tải bởi thuộc tính hành động của biểu mẫu, tất cả các đối tượng của biểu mẫu được cung cấp dưới dạng tham số cho tệp tập lệnh, với định dạng

?name=value&name2=value2 ...

Có các tham số là một phần của URL với yêu cầu GET, có các tham số ẩn với POST

Và các tham số này trở thành các biến và giá trị trong tập lệnh PHP
Trong trường hợp này

?mytext="the entered text"

Giá trị là văn bản bạn đã gõ

Loại ẩn cho phép gửi dữ liệu không do người dùng cung cấp

Và nếu bạn muốn gửi tới script trên máy chủ một số giá trị không lấy được qua biểu mẫu thì xử lý như thế nào?
Một giải pháp đơn giản là sử dụng các phần tử ẩn, như phần tử này

Loại phần tử này không hiển thị trong biểu mẫu và có mục đích duy nhất là thêm một giá trị vào các giá trị khác do biểu mẫu cung cấp

Nếu bạn muốn thay đổi động giá trị truyền vào script, bạn có thể gán giá trị của thẻ ẩn, ví dụ

document.myform.extra.value = "some value";

Các biến PHP được chèn vào trang HTML thông qua echo

Trang này phải được trình thông dịch PHP phân tích cú pháp, do đó, phải có phần mở rộng PHP (trừ khi máy chủ được định cấu hình khác)

Khi mã PHP được bao gồm, với các câu lệnh sau

bất cứ thứ gì có thể được chèn vào trang bằng lệnh echo

This text is displayed in the page.";
?>

Văn bản này được hiển thị trong trang

Bạn có thể gán trực tiếp một giá trị cho một thuộc tính của một đối tượng theo cách này

Đây là một lỗi phổ biến khi bao gồm mã PHP trong JavaScript và mong đợi mã PHP sử dụng kết quả JavaScript. Trên thực tế, PHP được máy chủ xử lý trước khi trang được tải và mã JavaScript được xử lý sau khi trang được tải. Mã PHP không có nghĩa là sử dụng kết quả trực tiếp của mã JavaScript, thay vào đó phải sử dụng Ajax

JavaScript có thể truy cập các biến PHP không?

Tùy thuộc vào loại biến PHP bạn muốn sử dụng trong Javascript. Ví dụ: không thể sử dụng toàn bộ đối tượng PHP với các phương thức lớp trong Javascript. Tuy nhiên, bạn có thể sử dụng các hàm PHP JSON (Ký hiệu đối tượng JavaScript) tích hợp để chuyển đổi các biến PHP đơn giản thành các biểu diễn JSON .

Làm cách nào để hiển thị biến PHP trong JavaScript?

$php biến = 'chuỗi'; . Tất nhiên bạn có thể lấy giá trị của biến này theo cách bạn cần. Đó là nó. Bạn chỉ cần xác định biến PHP trước, sau đó lặp lại nó thành câu lệnh khai báo biến JS cơ bản

JS có thể tương tác với PHP không?

PHP là ngôn ngữ kịch bản phía máy chủ, trong khi JavaScript là ngôn ngữ kịch bản phía máy khách. Hai ngôn ngữ có thể thích ứng và có thể hoạt động tốt cùng nhau cũng như riêng biệt .

Làm cách nào để khai báo biến PHP trong JavaScript?

Bạn không thể khai báo một biến PHP trong JS. .
bạn không thể trực tiếp sử dụng JS để thay đổi các biến phiên, bạn có thể sử dụng ajax để chạy tập lệnh php trên máy chủ để thực tập thay đổi phiên của bạn cho bạn. .
Vì vậy, tôi phải sử dụng ajax?.
Có, bạn cần sử dụng Ajax