در نسخه های جدید PHP که منظور اصلی ما پی اچ پی ۷ یا بالاتر از آن می باشد، تغیراتی در توابع فراخونی شده حاصل شده که اگر سیستم مورد استفاده شما بر پایه PHP 7 پیاده شده باشد و در کانفیگ سرور خود نسخه PHP 5.6 یا کمتر را فعال کرده باشید به خطای ereg_replace برخورد خواهید کرد.
[quote]پیشنهاد ویژه: تجارت الکترونیک خود را از همینک آغاز کنید….[/quote]
همانطور که قبلا عرض شد با به روزرسانی یک سیستم میبایست زیرساخت های موردنیاز آن را هم فراهم کنیم. متن خطا:
1 2 |
۰ Call to undefined function ereg_replace() |
یا
1 2 3 |
۰ - An error has occurred. Call to undefined function ereg_replace() |
با آپدیت PHP به نسخه های جدید (۷٫۰ و یا بالاتر) نیاز دارید که برخی توابعی که در کدهای سیستم شما به کار گرفته شده را به توابع جدید تغییر دهید. علت بروز خطای ereg_replace به این خاطر است که در پی اچ پی ۷٫۰ تابع ereg_replace حذف و در عوض تابع preg_replace تغییر یافته است.
[quote]پیشنهاد ویژه: سامانه نوبت دهی اینترنتی آرایشگاه ها ، سالن های زیبایی و مراکز ماساژ[/quote]
برای حل این موضوع فقط کافی است که در کل فایل های پروژه از طریق Notepad++ بگیرید و تابع ereg_replace را پیدا کنید سپس آن را با preg_replace جایگزین کنید.
بطور مثال:
کد را از:
1 |
<span class="pln">ereg_replace</span><span class="pun">(</span> <span class="str">'#\$([0-9])#'</span><span class="pun">,</span> <span class="str">'\$$1'</span><span class="pun">,</span><span class="pln"> $value </span><span class="pun">);</span> |
1 |
preg_replace( '#\$([0-9])#', '\$$1', $value ); |
تغییر میدهیم.
[quote]پیشنهاد ویژه: سامانه نوبت دهی اینترنتی پزشکان و مراکز درمانی[/quote]
با این ترفند مشکل شما میبایست مرتقع شده باشد. اگر با اعمال تغییر مشکل همچنان پابرجا بود میتوانیم نسخه PHP سرور را بروی ورژن ۵٫۶ تنظیم کنید.
[scrolling_box display=”category” category=”93″ count=”10″ items=”4″ rows=”1″ autoplay=”yes”]