• کنترل خطاها در php
    #1
    Note 
    Handler (مدیر خطا) پیش فرض PHP بسیار کارآمد است اما صرفا فقط از بروز خطا ما را با خبر می سازد و در مواجهه با یک خطا عمل دیگری انجام نمی دهد. اما خوشبختانه این تمهید که در PHP شما بتوانید خطاها را خودتان مدیریت کنید دیده شده است و تابع set_error_handler به این منظور نوشته شده است
    کد php:
    Set_error_handler($error_handler) ; 


    این تابع فقط یک آرگومان دارد که این آرگومان نام تابعی است که شما برای به دست گیری و مدیریت خطا می نویسید.
    توجه : در صورتی که از عدد 0 به عنوان آرگومان تابع فوق استفاده شود بدست گیری و مدیریت خطا به حالت پیش فرض PHP باز می گردد.
    کد php:
    set_error_handler(0) ; 
    برای این که بیشتر ملموس باشد مثالی می زنم:
    کد php:
    <?phperror_reporting(E_ALL);function my_error_handler($number$string$file$line){        echo ("Error ($number) on line $line in file $file. The error was \"$string\"\n") ;        // You Can do Any Code Here Like Error Logging Or e-mail The error to a email address or ...}ini_set('display_errors',0);set_error_handler("my_error_handler");$mysky = fopen('file1',1024);?>

    در ضمن توی PHP5 میشه از try و catch هم استفاده کرد.

    راه های دیگری هم وجود دارد:
    توی php.ini می تونیم display_errors با off تنظیم کنیم. یا می تونیم از:
    کد php:
    error_reporting(0); 

    منبع: برنامه نویس
    برای اطلاع بیشتر به سایت رسمی php مراجعه کنید:
    کد:
    http://www.php.net/manual/en/ref.errorfunc.php

    پاسخ
    #2
    Note 
    سلام
    من همینکارو کردم ولی بازم خطا رو نمایش میده؟

    پاسخ
    #3
    Note 
    Bill نوشته است:سلام
    من همینکارو کردم ولی بازم خطا رو نمایش میده؟
    سلام
    اینو بذار ببین درست میشه؟
    کد:
    ini_set('display_errors', '0')

    پاسخ
    ایجاد موضوع جدید   پاسخ به موضوع  

    کاربرانِ درحال بازدید از این موضوع:   1 مهمان