Support

Akeeba Solo

#43236 After updating to 9.1.8 I get a php error

Posted in ‘Akeeba Solo’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

PHP version
7.4
Akeeba Solo version
9.1.8

Latest post by carcam on Tuesday, 04 August 2026 10:57 CDT

carcam
Hi,
after updating to 9.1.8 I got the following error:

Application Error
Please submit the following error message and trace in its entirety when requesting support

Error — Call to undefined function Awf\Text\str_starts_with()
#0 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Text/Language.php(621): Awf\Text\Language->getAcceptedLanguages()
#1 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Text/Language.php(313): Awf\Text\Language->detectLanguageFromBrowser(NULL)
#2 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Container/Defaults/LanguageFactoryProvider.php(37): Awf\Text\Language->detectLanguage(NULL, NULL)
#3 [internal function]: Awf\Container\Defaults\LanguageFactoryProvider->Awf\Container\Defaults\{closure}(NULL, NULL, Array)
#4 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Container/Container.php(375): call_user_func(Object(Closure), NULL, NULL, Array)
#5 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Application/Application.php(105): Awf\Container\Container->__call('languageFactory', Array)
#6 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Application/ApplicationServiceProvider.php(35): Awf\Application\Application->__construct(Object(Solo\Container))
#7 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Pimple/Pimple.php(128): Awf\Application\ApplicationServiceProvider->__invoke(Object(Solo\Container))
#8 /srv/users/carritos/apps/carritosbaratos/public/solo/vendor/akeeba/awf/src/Pimple/Pimple.php(329): Awf\Pimple\Pimple->offsetGet('application')
#9 /srv/users/carritos/apps/carritosbaratos/public/solo/index.php(44): Awf\Pimple\Pimple->__get('application')
#10 {main}

Any help?

Thanks!!

nicholas
Akeeba Staff
Manager

That's a missing backfill for str_starts_with which is available only on PHP 8.0. Given that PHP 7.4 and 8.0 are EOL, and 8.1 will be EOL in 4 months, would it be acceptable for you to move that installation to PHP 8.2?

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

carcam
Hi Nicholas,
thank you very much for your reply.

I'm afraid I cannot switch to PHP 8 in the short term for that project easily.

But Solo is installed in a subfolder of the project and I can move it to its own subdomain in the server that can have a different PHP version. If you can kindly point me on the params I need to change to change the url of Akeeba Solo and the full path of the folder where it's installed, I can make the switch.

Funny enough I just checked and the automatic backups keep working because I'm using PHP-CLI with PHP 8.5 in the line xD

Otherwise, I will appreciate if you can provide a fix (a way to downgrade release will worf for me right now) so that I can keep backing up the site till I do the switch to php in the main project.

Also, please check the php versions on the release info as 7.4 is listed as a compatible version. Also, I think in the past Akeeba Solo has not allowed me the live update if php version was not compatible, if that is still a thing, it will be nice if you could check it ;)

Thank you very much again for your informative response.

nicholas
Akeeba Staff
Manager

It's literally that one line which is using str_starts_with in Test/Language.php line 408. Change it to:

if (substr($qParam ?? '', 0, 2) !== 'q=')

This is a blind change; I don't have PHP 7.4 to test with right now as I am on vacation. Old PHP is usually something I test with Docker on the big boy desktop with 64 GB RAM – bought last year a mere 3 weeks before the RAMpocalypse, in a rare stroke of good luck.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

carcam
Thanks!!

That worked like a charm and I can now access the administration area with my browser.

I'll open a couple of extra tickets with some questions that I have for the next steps. Thanks!!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!