복붙노트

구문 분석 오류 : 구문 오류, PHP 코드에서 예기치 않은 파일 끝

PHP

구문 분석 오류 : 구문 오류, PHP 코드에서 예기치 않은 파일 끝

오류가 있습니다.

Parse error: syntax error, unexpected end of file in the line

이 코드로 :

<html>
    <?php
        function login()
        {
            // Login function code
        }
        if (login())
    {?>

    <h2>Welcome Administrator</h2>
    <a href=\"upload.php\">Upload Files</a>
    <br />
    <a href=\"points.php\">Edit Points Tally</a>

    <?php}
        else
        {
            echo "Incorrect login details. Please login";
        }
    ?>
    Some more HTML code
</html>

뭐가 문제 야?

해결법

  1. ==============================

    1.코드 끝 부분에서 다음을 피하십시오.

    코드 끝 부분에서 다음을 피하십시오.

    {?>
    

    이:

    <?php}
    

    열기 / 닫기 php 태그 바로 가까이에 괄호를 두지 말아야하지만 공백으로 구분해야합니다.

    { ?>
    <?php {
    

    또한 <을 피하십시오?

  2. ==============================

    2.같은 오류가 있었지만 php.ini 파일을 수정하여 수정했습니다.

    같은 오류가 있었지만 php.ini 파일을 수정하여 수정했습니다.

    php.ini 파일을 찾으십시오. Dude, 내 php.ini는 어디에 있습니까?를 참조하십시오.

    그런 다음 좋아하는 편집기로 엽니 다.

    short_open_tag 속성을 찾고 다음 변경 내용을 적용하십시오.

    ; short_open_tag = Off ; previous value
    short_open_tag = On ; new value
    
  3. ==============================

    3.구문 분석 오류 구문을 해결하는 두 가지 방법이 있습니다.

    구문 분석 오류 구문을 해결하는 두 가지 방법이 있습니다.

    PHP 파일에서 다음과 같이하지 마십시오.

    <? } ?>
    

    너는 이것을 꼭 넣어야한다.

    <?php ?>
    

    또한 문제를 해결할 수있는 간단한 방법이 있습니다. short_open_tag 속성 값 (Ctrl + F!로 텍스트 편집기에서 사용)을 검색하고 다음 변경 사항을 적용합니다.

    ; short_open_tag = Off
    

    short_open_tag = On
    

    핵심 php.ini 지시어에 따르면 short_open_tag를 사용하면 xml (

  4. ==============================

    4.php.ini로 이동 한 다음 short_open_tag 찾기 = off로 설정 short_open_tag = 켜기

    php.ini로 이동 한 다음 short_open_tag 찾기 = off로 설정 short_open_tag = 켜기

  5. ==============================

    5.수업을 종료했는지 확인하십시오.

    수업을 종료했는지 확인하십시오.

    예를 들어 메소드가있는 컨트롤러 클래스가 있고 실수로 전체 클래스를 닫는 마지막 괄호를 삭제하면이 오류가 발생합니다.

    class someControler{
    private $varr;
    public $varu;
    ..
    public function method {
    ..
    } 
    ..
    }// if you forget to close the controller, you will get the error
    
  6. ==============================

    6.또한 닫는 중괄호를 끊는 주석을 찾습니다.

    또한 닫는 중괄호를 끊는 주석을 찾습니다.

    if (1 == 1) {// echo "it true"; }

    닫는 중괄호는 조건부를 제대로 닫지 않으며 php는 나머지 코드를 제대로 처리하지 못합니다.

  7. ==============================

    7.foreach : php를 닫을 때 나는이 문제에 부딪쳤다.

    foreach : php를 닫을 때 나는이 문제에 부딪쳤다.

    <?php foreach($many as $one): ?>
    

    다음과 같은 구문 오류를 사용하여 그것을 닫으면 : 예기치 않은 파일 끝

    <?php endforeach; ?>
    

    누군가가 도움이되기를 바랍니다.

  8. ==============================

    8.아래에서 해결 한 몇 가지 오류가 나타났습니다.

    아래에서 해결 한 몇 가지 오류가 나타났습니다.

    이것은 내가 잘못된 것으로 생각한 것입니다.

    if (login())
    {?>
    <h2>Welcome Administrator</h2>
    <a href=\"upload.php\">Upload Files</a>
    <br />
    <a href=\"points.php\">Edit Points Tally</a>
    <?php}
    else
    {
    echo "Incorrect login details. Please login";
    }
    

    이것이 내가 어떻게 했을까.

    <html>
        some code
    <?php
    function login()
    {
        if (empty ($_POST['username']))
        {
            return false;
        }
        if (empty ($_POST['password']))
        {
            return false;
        }
        $username = trim ($_POST['username']);
        $password = trim ($_POST['password']);
        $scrambled = md5 ($password . 'foo');
        $link = mysqli_connect('localhost', 'root', 'password');
        if (!$link)
        {
            $error = "Unable to connect to the database server";
            include 'error.html.php';
            exit ();
        }
        if (!mysqli_set_charset ($link, 'utf8'))
        {
            $error = "Unable to set database connection encoding";
            include 'error.html.php';
            exit ();
        }
        if (!mysqli_select_db ($link, 'foo'))
        {
            $error = "Unable to locate the foo database";
            include 'error.html.php';
            exit ();
        }
        $sql = "SELECT COUNT(*) FROM admin WHERE username = '$username' AND password = '$scrambled'";
        $result = mysqli_query ($link, $sql);
        if (!$result)
        {
            return false;
            exit ();
        }
        $row = mysqli_fetch_array ($result);
        if ($row[0] > 0)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    if (login())
    {
    echo '<h2>Welcome Administrator</h2>
    <a href=\"upload.php\">Upload Files</a>
    <br />
    <a href=\"points.php\">Edit Points Tally</a>';
    }
    else
    {
        echo "Incorrect login details. Please login";
    }
    ?>
    some more html code
    </html>
    
  9. ==============================

    9.이것도 피하십시오 를 넣었는지 확인하십시오.>

    이것도 피하십시오 를 넣었는지 확인하십시오.>

  10. ==============================

    10.또한 자리를 잡기가 어려운 또 다른 경우는 함수가있는 파일이있는 경우입니다. 일반적인 사용 사례는 아니지만 성가 시거나 오류를 발견해야한다는 것을 알고 있습니다.

    또한 자리를 잡기가 어려운 또 다른 경우는 함수가있는 파일이있는 경우입니다. 일반적인 사용 사례는 아니지만 성가 시거나 오류를 발견해야한다는 것을 알고 있습니다.

    <?php
    function () {
    
    }
    

    위의 파일은 erro 구문 분석 오류를 반환합니다. 구문 오류. 예기치 않은 파일 끝에있는 부분은 다음과 같습니다.

    <?php
    function () {
    
    };
    
  11. ==============================

    11.parse_ini_file ($ file) 또는 루틴이 .ini 파일을 검사하는 경우, ini 파일에서 데이터가 인용되었는지 확인하십시오. 따옴표로 묶지 않은 데이터는이 오류를 발생시킵니다. 전의; data1 = test는 오류를 발생 시키며 data1 = "test"는 오류를 발생시키지 않습니다.

    parse_ini_file ($ file) 또는 루틴이 .ini 파일을 검사하는 경우, ini 파일에서 데이터가 인용되었는지 확인하십시오. 따옴표로 묶지 않은 데이터는이 오류를 발생시킵니다. 전의; data1 = test는 오류를 발생 시키며 data1 = "test"는 오류를 발생시키지 않습니다.

  12. from https://stackoverflow.com/questions/11482527/parse-error-syntax-error-unexpected-end-of-file-in-my-php-code by cc-by-sa and MIT license