PHP7 এ যেসব ফিচার Deprecated বা Removed হয়েছে

Deprecations and Removed Features in PHP7 (PHP7 এ অবলুপ্ত এবং অপসারিত ফিচার) - পিএইচপি (PHP 7) - Computer Programming

314

PHP7-এ কিছু ফিচার deprecated বা removed করা হয়েছে, যা পূর্ববর্তী সংস্করণে বিদ্যমান ছিল কিন্তু নতুন ভার্সনে সেগুলির ব্যবহার অদূরদর্শী বা নিরাপত্তাজনিত কারণে না করার পরামর্শ দেওয়া হয়েছে। এছাড়া কিছু ফিচার PHP7 থেকে পুরোপুরি remove করা হয়েছে। এই পরিবর্তনগুলি PHP কোডের উন্নততর নিরাপত্তা, পারফরম্যান্স এবং প্রযোজ্যতা নিশ্চিত করার জন্য করা হয়েছে।

নিচে PHP7-এ deprecated এবং removed ফিচারের বিস্তারিত আলোচনা করা হলো:


Deprecated ফিচারসমূহ

Deprecated ফিচারগুলি PHP 7-এ এখন ব্যবহার না করার জন্য পরামর্শ দেওয়া হয়, কিন্তু এগুলি পুরোপুরি remove করা হয়নি। পরবর্তীতে এই ফিচারগুলিকে ভবিষ্যত সংস্করণে সরানো হতে পারে।

  1. ereg() ফাংশন

    • ereg(), ereg_replace(), এবং split() ফাংশনগুলি PCRE (Perl Compatible Regular Expressions) এর মাধ্যমে প্রতিস্থাপিত হয়েছে।
    • ereg() ফাংশনটি deprecated হয়েছে, এবং এর পরিবর্তে preg_match() বা preg_replace() ব্যবহারের পরামর্শ দেওয়া হয়েছে।

    ব্যবহার থেকে বিরত থাকা:

    // Deprecated
    ereg('pattern', $string);

    পরিবর্তন:

    // Recommended
    preg_match('/pattern/', $string);

  1. mysql_* ফাংশন

    • mysql_* এক্সটেনশনের ফাংশনগুলি যেমন mysql_connect(), mysql_query() ইত্যাদি, deprecated হয়েছে এবং এটি PHP 7-এ remove করা হয়েছে।
    • mysqli_* অথবা PDO এর পরিবর্তে ব্যবহারের পরামর্শ দেওয়া হয়েছে, যা আরও নিরাপদ এবং আধুনিক।

    Deprecated:

    mysql_connect('localhost', 'user', 'password');

    Recommended:

    $conn = new mysqli('localhost', 'user', 'password');

  1. $php_errormsg গ্লোবাল ভ্যারিয়েবল

    • $php_errormsg গ্লোবাল ভ্যারিয়েবলটি deprecated হয়েছে। PHP 7 এর পর, ত্রুটি বার্তা শো করার জন্য error_get_last() ফাংশন ব্যবহার করতে হবে।

    Deprecated:

    echo $php_errormsg;

    Recommended:

    $error = error_get_last();
    echo $error['message'];

  1. mcrypt_* ফাংশনগুলি

    • mcrypt_* ফাংশনগুলো নিরাপত্তার কারণে deprecated হয়েছে এবং openssl এর মাধ্যমে এনক্রিপশন ব্যবহারের পরামর্শ দেওয়া হয়েছে।

    Deprecated:

    mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $data, MCRYPT_MODE_CBC, $iv);

    Recommended:

    openssl_encrypt($data, 'aes-128-cbc', $key, 0, $iv);

  1. parse_str() এর আউটপুট প্যারামিটার

    • parse_str() ফাংশনে আউটপুট প্যারামিটারটি deprecated হয়েছে। এটি ইনপুট ভেরিয়েবলদের অ্যাসোসিয়েটিভ অ্যারে তৈরি করার জন্য ব্যবহৃত হত। এখন এটিকে সরাসরি ব্যবহার না করার পরামর্শ দেওয়া হয়েছে।

    Deprecated:

    parse_str("a=1&b=2", $output);

    Recommended:

    parse_str("a=1&b=2", $output);

Removed ফিচারসমূহ

PHP7-এ কিছু ফিচার পুরোপুরি remove করা হয়েছে, অর্থাৎ এগুলি আর PHP7 তে কাজ করবে না এবং এগুলির পরিবর্তে নতুন ফিচার ব্যবহারের পরামর্শ দেওয়া হয়েছে।

  1. mysql_* এক্সটেনশন

    • PHP 5.5.0 থেকে mysql_* এক্সটেনশনটি deprecated করা হয়েছিল এবং PHP 7 তে এটি remove করা হয়েছে।
    • এর পরিবর্তে mysqli_* অথবা PDO ব্যবহারের পরামর্শ দেওয়া হয়েছে।

    Removed:

    mysql_connect('localhost', 'user', 'password');  // Error in PHP7

    Recommended:

    $conn = new mysqli('localhost', 'user', 'password');  // Safe in PHP7

  1. ereg এবং split ফাংশন

    • ereg(), ereg_replace(), split() এবং spliti() ফাংশনগুলি PHP7-এ remove করা হয়েছে, এবং এগুলির পরিবর্তে preg_* ফাংশনগুলি ব্যবহৃত হবে।

    Removed:

    ereg('pattern', $string);  // Error in PHP7

    Recommended:

    preg_match('/pattern/', $string);  // Safe in PHP7

  1. call_user_method() এবং call_user_method_array()

    • call_user_method() এবং call_user_method_array() ফাংশন দুটি PHP7-এ remove করা হয়েছে। এটি ব্যবহার করার পরিবর্তে call_user_func() বা call_user_func_array() ব্যবহার করতে হবে।

    Removed:

    call_user_method('method', $object);  // Error in PHP7

    Recommended:

    call_user_func([$object, 'method']);  // Safe in PHP7

  1. $HTTP_* গ্লোবাল ভ্যারিয়েবলস

    • $HTTP_* গ্লোবাল ভ্যারিয়েবলগুলি (যেমন, $HTTP_POST_VARS, $HTTP_GET_VARS) PHP7-এ remove করা হয়েছে। এগুলির পরিবর্তে সরাসরি $_POST, $_GET, $_REQUEST ইত্যাদি সুপারগ্লোবাল ভ্যারিয়েবল ব্যবহার করতে হবে।

    Removed:

    $HTTP_GET_VARS['username'];  // Error in PHP7

    Recommended:

    $_GET['username'];  // Safe in PHP7

সারসংক্ষেপ

PHP7-এ অনেক পুরনো এবং নিরাপত্তাহীন ফিচার deprecated বা removed করা হয়েছে। mysql_* ফাংশনগুলির ব্যবহার নিষিদ্ধ করা হয়েছে এবং এর পরিবর্তে mysqli_* অথবা PDO ব্যবহারের পরামর্শ দেওয়া হয়েছে। এছাড়াও, ereg(), split(), এবং $HTTP_* গ্লোবাল ভ্যারিয়েবলগুলির মতো কিছু পুরানো ফিচার PHP7 থেকে সরানো হয়েছে। এই পরিবর্তনগুলি PHP কোডের নিরাপত্তা, কার্যকারিতা এবং আধুনিকতার জন্য অত্যন্ত গুরুত্বপূর্ণ।

Content added By
Promotion

Are you sure to start over?

Loading...