0

我在尝试将对象保存到会话时遇到问题。

从我的 index.php 我创建对象并将其存储到会话中:

  include_once __DIR__.'/vendor/autoload.php';
  use Axiom\Rivescript\Rivescript;
  $test = new Rivescript();
  $test->load(realpath(__KNOWLEDGE__));

  session_start();
  if (isset($_SESSION['ENGINE'])){
    unset($_SESSION['ENGINE']);
  }
  $_SESSION['ENGINE'] = $test;

在另一个 php 页面中,我记得获取 te 对象的会话:

session_start();
if (!isset($_SESSION['ENGINE'] )){
    // error
}else{
    $test = $_SESSION['ENGINE'];
    $txt = $test->reply($input,$client_id);
}

此页面由 AJAX 调用。

我得到这个错误:

Notice: Trying to get property 'memory' of non-object in /var/www/html/vendor/axiom/rivescript/src/Cortex/Input.php on line 64

Fatal error: Uncaught Error: Call to a member function substitute() on null in /var/www/html/vendor/axiom/rivescript/src/Cortex/Input.php:64 Stack trace: #0 /var/www/html/vendor/axiom/rivescript/src/Cortex/Input.php(33): Axiom\Rivescript\Cortex\Input->cleanOriginalSource() #1 /var/www/html/vendor/axiom/rivescript/src/Rivescript.php(34): Axiom\Rivescript\Cortex\Input->__construct('ciao', '5e5fe0688782a') #2 /var/www/html/include/bot.php(24): Axiom\Rivescript\Rivescript->reply('ciao', '5e5fe0688782a') #3 {main} thrown in /var/www/html/vendor/axiom/rivescript/src/Cortex/Input.php on line 64

有什么帮助吗??

4

0 回答 0