相关疑难解决方法(0)

PHP解析/语法错误; 以及如何解决它们?

每个人都遇到语法错误.即使是有经验的程序员也会犯错误.对于新手来说,这只是学习过程的一部分.但是,通常很容易解释错误消息,例如:

PHP Parse错误:语法错误,第20行的index.php中出现意外的'{'

意想不到的符号并不总是真正的罪魁祸首.但是行号给出了从哪里开始寻找的粗略想法.

始终查看代码上下文.语法错误往往隐藏在提及前面的代码行.将您的代码与手册中的语法示例进行比较.

虽然不是每个案例都匹配另一个案例 然而,有一些常规步骤可以解决语法错误.这篇文章总结了常见的陷阱:

php debugging parsing syntax-error

614
推荐指数
13
解决办法
48万
查看次数

找不到PHP类,但它已包含在内

我包含了一个PHP类

require_once($ENGINE."/classUser.php");
Run Code Online (Sandbox Code Playgroud)

但是当代码执行时,我收到此错误:

致命错误:第12行的C:\ xampp\htdocs\WebName\resources\engine\ajax\signup.php中找不到"用户"类

我仍然无法弄清楚问题是什么.我99%肯定这是正确的.

"$ ENGINE"是正确的,类也是正确的(Netbeans建议我使用类方法和变量).

signup.php:

<?php

/* Created on: 13/12/2011
 * Author: 
 * 
 * Description: User signup procedure.
 */

require_once("../settings.php");
require_once($ENGINE."/classUser.php");

$user = new User();
$user->createUser($_POST["username"], $_POST["email"], $_POST["password"]);


?>
Run Code Online (Sandbox Code Playgroud)

classUser.php:

<?php

/* Created on: 13/12/2011
 * Author: 
 * 
 * Description: This class manages users.
 */

require_once("settings.php");
require_once($LIBRARY."/cassandraphp/cassandra.php");

class User {

    public function createUser($username, $email, $password){
        $cassandra = Cassandra::createInstance($CASSANDRASERVER);
        $cassandra->set(
                "user.".$username,
                array(
                    'ID' => uniqid(),
                    'Username' => $username,
                    'Email' => $email,
                    'Password' => $password
                )
        );
    } …
Run Code Online (Sandbox Code Playgroud)

php

36
推荐指数
5
解决办法
9万
查看次数

PHP类 - PHPMailer意外'使用'(T_USE)

我想使用PHPMailer的类进行测试.在阅读了官方文档后,我看到有两种方法可以包含在我的项目中:

1)使用作曲家

2)复制内容并包含路径

第一个选择,作曲家,我不知道怎么做.第二个选项,复制内容和包含路径看起来更容易.

我用这行代码制作了一个test.php:

<?php

        session_start();

        if(isset($_SESSION['username']) and $_SESSION['username'] != ''){

            use PHPMailer\PHPMailer\PHPMailer;
            use PHPMailer\PHPMailer\Exception;

            require 'assets/PHPMailer/src/Exception.php';
            require 'assets/PHPMailer/src/PHPMailer.php';
            require 'assets/PHPMailer/src/SMTP.php';

            $mail = new PHPMailer;

            echo 'Versión actual de PHP: ' . phpversion();

        }else{
            ?>
            <br>
        <br>
        <div class="row">
              <div class="text-center">
                  <p class='errorLogin'>Inactive session, relogin <a href="login.php">here</a></p>
              </div>
        </div>
<?php
        }?>
Run Code Online (Sandbox Code Playgroud)

此代码仅将clases加载到环境中并生成对象PHPMailer类的实例.

运行后,日志文件显示错误:

[Tue Oct 17 10:17:10.331051 2017] [:error] [pid 3879] [client 192.168.0.184:50679] PHP Parse错误:语法错误,/ var/www/test/sendMail中的意外"使用"(T_USE) .PHP

PHP版本:5.6.30-0 + deb8u1

有人能帮助我吗?

php phpmailer

-1
推荐指数
2
解决办法
5173
查看次数

标签 统计

php ×3

debugging ×1

parsing ×1

phpmailer ×1

syntax-error ×1