Как передать переменные между php-скриптами?

Есть ли способ передать значения и переменные между php-скриптами?

Формально я пытался закодировать страницу входа и когда пользователь вводит неправильный ввод, первый другой скрипт проверяет ввод, а если он ошибочен, сайт возвращается к последней странице сценария и показывает предупреждение типа «Это неправильный ввод». Для этой цели мне нужно передать значения из сценариев, я думаю.

С уважением …: P

Для передачи информации через GET :

header('Location: otherScript.php?var1=val1&var2=val2'); 

Сессия :

  // first script session_start(); $_SESSION['varName'] = 'varVal'; header('Location: second_script.php'); // go to other // second script session_start(); $myVar = $_SESSION['varName']; 

Сообщение : Взгляните на это .

Не можете ли вы include (или include_once или require ) другой скрипт?

Вы должны изучить переменные сеанса . Это включает в себя хранение данных на сервере, связанных с определенным ссылочным номером («идентификатор сеанса»), который затем отправляется браузером по каждому запросу (как правило, в виде файла cookie). Сервер может видеть, что тот же пользователь обращается к странице, и он устанавливает $_SESSION чтобы отразить это.

Например:

a.php

 session_start(); // must be called before data is sent $_SESSION['error_msg'] = 'Invalid input'; // redirect to b.php 

b.php

 <?php session_start(); echo $_SESSION['error_msg']; // outputs "Invalid input" 

Быстрый способ – использовать глобальные или сеансовые переменные.

 global $variable = 'something'; 

«Лучшим» способом сделать это будет включение сценария и передача переменной по параметру, например:

 // script1.php contains function 'add3' function add3( $value ) { return $value + 3; } // script2.php include "script1.php"; echo 'Value is '.add3(2); // Value is 5 

Я бы сказал, что вы также можете сохранить переменную в кеше, если вам действительно нужно.

Вы можете использовать:

  • временный файл (например, tempnam() ),
  • кеш (NoSQL: memcached , redis ),
  • переменная сеанса ( $_SESSION ), но сначала нужно начать сеанс.

Я использую метод extract() для передачи переменной среди PHP-скриптов . Это выглядит как пример:

1. Файл index.php

 <?php $data = [ 'title'=>'hello', 'content'=>'hello world' ]; extract($data); require 'content.php'; 

2. Файл content.php :

 <?php echo $title; echo $content;