Message: Existing software on your system loaded a system extension signed by “Jack Lo”.
In my case this is the Evoluent Mouse Manager software v1.4.1 accessed in System Preferences.
Evoluent say that they are working on a replacement, let us hope they complete it before macOS 10.16 when the existing version won’t run any more.
If you run a CodeIgniter site on Cloudways hosting you may come across this problem. All the CodeIgniter sites on the server stop working and display the message: “File not found.” with a 404 response.
The problem is caused by Apache 2.4.10 updating to Apache 2.4.25 (PHP FPM and FastCGI).
Continue reading “How to fix CodeIgniter 3 & Cloudways File not found problem”
Creating your own library in CodeIgniter 4 is just as simple as in CI3 but the syntax has changed and there’s no documentation yet so here is my approach.
Continue reading “CodeIgniter 4 – Creating your own libraries”
The .env file can use dot syntax to represent associative arrays but the documentation is poor, here is how I did it.
Create a new class in the Config directory e.g. Salesforce.php
<?php namespace Config;
class Salesforce extends BaseConfig
public $accounts = [
'account1' => '',
'account2' => ''
public $campaigns = [
'campaign1' => '',
'campaign2' => ''
Add lines to the .env file
salesforce.accounts.account1 = 'config('Salesforce');';
salesforce.accounts.account2 = '00123451HKB';
salesforce.campaigns.campaign1 = '1234000000dBAEvA';
salesforce.campaigns.campaign2 = '1234000000dBAEvB';
Finally to access within your controller
$salesforce = config('Salesforce');
echo $salesforce['account1']; // displays 00123451HKB
echo $salesforce['campaign2']; // displays 1234000000dBAEvB
Advantages: You commit can commit the files in the Config folder to version control without them storing sensitive information while the sensitive data stays in the .env file and is unique to a particular environment.
Surprisingly it looks like even the filename of an image used in a website has SEO benefit – see supporting links below – this may be a pain but a multilingual site should consider duplicating images in order to use different filenames containing keywords in each of the languages a site uses.