Minggu, 30 November 2025

Mengatasi Error strpos() pada HMVC Codeigniter 3 di PHP 7.3

 pesan error strpos() kurang lebih seperti dibawah ini :

Message: strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior

Berikut langkah-langkahnya untuk memeperbaiki error strpos() jika kalian punya masalah yang sama dengan punya saya :

1. Buka file Application/third_party/MX/Router.php

2. Kemudian di baris 239 terdapat blok kode seperti di bawah ini :

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if( strpos($class, $suffix) === FALSE ) //sebelum
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}
PHP

Didalam fungsi tersebut terdapat logika untuk mengecek ada tidaknya $suffix di dalam variable $class, di versi php sebelumnya strpos ini masih tidak menyebabkan error, tetapi mulai dari php versi 7.3 sepertinya php lebih strict dan mengeluarkan pesan error untuk penggunaan strpos() ini.

3. Untuk mengatasinya ubah baris kode diatas menjadi seperti dibawah ini :

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if( $suffix && strpos($class, $suffix) === FALSE) //sesudah
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}
PHP


Tidak ada komentar:

Posting Komentar

Solusi OJS 3 kena SPAM LINK JUDI atau BOKEP

 cek pada file    rubah nama atau hapus folder CSS