{"id":13406,"date":"2024-07-15T16:10:44","date_gmt":"2024-07-15T15:10:44","guid":{"rendered":"https:\/\/www.20i.com\/blog\/?p=13406"},"modified":"2026-03-27T17:59:56","modified_gmt":"2026-03-27T17:59:56","slug":"selling-php-optimised-hosting","status":"publish","type":"post","link":"https:\/\/www.20i.com\/blog\/selling-php-optimised-hosting\/","title":{"rendered":"Successfully Positioning &amp; Selling PHP Hosting"},"content":{"rendered":"\n<div id=\"intro\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\">PHP is used by <a href=\"https:\/\/w3techs.com\/technologies\/details\/pl-php\">76% of all websites<\/a> that have some form of server-side programming language. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It also powers WordPress, which is by far the most popular CMS around, with a <a href=\"https:\/\/w3techs.com\/technologies\/overview\/content_management\">63% CMS market share<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you are a white-label web host or you host customers\u2019 websites to compliment other services, your PHP-based optimisations and management tools should be front and centre in your marketing collateral and control panel.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here are the key features to position your PHP-based <a href=\"https:\/\/www.20i.com\/web-hosting\" data-internallinksmanager029f6b8e52c=\"16\" title=\"web hosting\">web hosting<\/a> proposition&#8230;<\/p>\n<\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"#workers\">PHP Workers<\/a><\/li>\n\n\n\n<li><a href=\"#fpm\">PHP-FPM<\/a><\/li>\n\n\n\n<li><a href=\"#opcache\">PHP OPCache<\/a><\/li>\n\n\n\n<li><a href=\"#version-control\">PHP Version Control<\/a><\/li>\n\n\n\n<li><a href=\"#default-version-control\">PHP Default Version control<\/a><\/li>\n\n\n\n<li><a href=\"#configuration\">PHP Configuration<\/a><\/li>\n\n\n\n<li><a href=\"#frameworks\">PHP Frameworks<\/a><\/li>\n\n\n\n<li><a href=\"#myadmin\">phpMyAdmin<\/a><\/li>\n\n\n\n<li><a href=\"#ioncube\">PHP Ioncube Loader<\/a><\/li>\n\n\n\n<li><a href=\"#1click\">One-click install PHP-based apps<\/a><\/li>\n\n\n\n<li><a href=\"#modules\">PHP Modules<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note:<\/strong> If you are a <a href=\"https:\/\/www.20i.com\/reseller-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">20i Reseller Hosting<\/a> customer, you get all those included as standard.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div id=\"workers\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP Workers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">PHP Workers are an important factor to deliver high-performance hosting for PHP based sites\/apps.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Workers.png\" alt=\"\" class=\"wp-image-13608\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Workers.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Workers-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">PHP-based tasks on a web server can often be resource intensive, especially for large or complex sites\/apps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To help prevent delays and handle multiple requests, PHP workers are employed.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A PHP worker refers to a process or thread that\u2019s responsible for executing PHP code. When a request comes into a server to load a PHP page, a PHP worker takes that request, executes the necessary PHP code, and then sends back the appropriate response, for example, in the form of an HTML page.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If a web server has too few PHP workers and gets too many simultaneous requests, it will queue up the excess requests until a worker becomes free. This can result in slow response times or timeouts for users.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each PHP worker consumes memory and CPU. So, there\u2019s a balance between having enough workers to handle the traffic and not overwhelming the server\u2019s resources.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><strong>\u27a1\ufe0f <\/strong>We don\u2019t place any limits on the number of PHP workers available to you or your customers.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Read our article about <a href=\"https:\/\/www.20i.com\/blog\/php-workers-and-wordpress-how-they-impact-your-hosting-performance\/\" target=\"_blank\" rel=\"noreferrer noopener\">PHP Workers and WordPress: How they impact your hosting performance <\/a>&nbsp;or <a href=\"https:\/\/www.youtube.com\/watch?v=eR5Ybn7SzQs\" target=\"_blank\" rel=\"noreferrer noopener\">watch our video on the same topic<\/a>.<\/p>\n<\/div>\n\n\n\n<div id=\"fpm\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP-FPM<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">PHP-FPM manages PHP processes. Its main advantage is that it can handle a high volume of queries, making it especially useful for sites with heavy traffic or complex web applications.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-FMP.png\" alt=\"\" class=\"wp-image-13609\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-FMP.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-FMP-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">PHP-FPM maintains pools of PHP processes that can serve PHP code without needing to start up a new PHP process for each request.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We configure PHP-FPM to use dynamic process management. This means that the number of PHP processes can be adjusted automatically based on the current demand. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When the server is under heavy load, PHP-FPM can spawn additional processes to handle the increased number of requests. Conversely, it can reduce the number of processes during periods of low activity to conserve resources.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We set optimal values for crucial PHP-FPM settings, such as:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>pm.max_children<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Determines the maximum number of child processes that can be created. This prevents the server from being overwhelmed by too many processes.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>pm.start_servers<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Specifies the number of child processes created on startup. This helps ensure there are enough processes ready to handle incoming requests without delay.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>pm.min_spare_servers and pm.max_spare_servers<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Define the minimum and maximum number of idle processes. This ensures there are always enough spare processes to handle spikes in traffic while preventing resource wastage.<\/p>\n<\/div>\n\n\n\n<div id=\"opcache\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP OPCache<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">OPcache is an opcode cache. Opcode caching works by saving the compiled PHP code between every request.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHPOpCache.png\" alt=\"\" class=\"wp-image-13611\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHPOpCache.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHPOpCache-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Without an opcode cache, PHP scripts are loaded, parsed, compiled, and executed with every request, which can be a time-consuming process. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is built in for all our hosting plans.&nbsp;&nbsp;<\/p>\n<\/div>\n\n\n\n<div id=\"version-control\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP Version Control<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Managing PHP versions can be a headache, especially when you&#8217;re juggling different projects with varying requirements.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Version-Control.png\" alt=\"\" class=\"wp-image-13607\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Version-Control.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Version-Control-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s why we\u2019ve made it simple with our PHP Version Control feature, &nbsp;to give your customers full control and flexibility over their development environment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether they are working on a legacy application that requires an older version or a new project that demands the latest PHP features, your customers can easily select the version they need from our user-friendly interface.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><strong>\u27a1\ufe0f <\/strong>This feature can be turned on\/off in your customers\u2019 StackCP control panel<\/strong><\/p>\n<\/div>\n\n\n\n<div id=\"default-version-control\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">Default PHP Version control<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As a web developer, agency or owner of multiple websites setting a default PHP version can bring benefits in managing your projects.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/Default-PHP-Version-Control.png\" alt=\"\" class=\"wp-image-13613\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/Default-PHP-Version-Control.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/Default-PHP-Version-Control-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">With each new version of PHP, there are often changes to the language and new features introduced, which can affect how websites and applications function.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Having a default PHP version simplifies the process of managing different versions of PHP.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It allows administrators and developers to easily switch between versions when necessary, without having to modify configuration files for every website or application you manage.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It also helps to prevent compatibility issues with plug-ins or themes if you are hosting WordPress websites.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><strong>\u27a1\ufe0f <\/strong>You can choose which version of PHP is installed by default in My20i &gt; Add\/Edit Package Type<\/strong><\/p>\n<\/div>\n\n\n\n<div id=\"configuration\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP Configuration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Advanced users naturally want more control over their PHP set up to customise the settings based on their specific requirements.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-configuration.png\" alt=\"\" class=\"wp-image-13602\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-configuration.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-configuration-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Each hosting package at 20i can configure the settings for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The maximum size of POST data allowed to the server, per request.<\/li>\n\n\n\n<li>The maximum amount of time on how long a single PHP script can run before the running script is killed.<\/li>\n\n\n\n<li>The maximum number of input variables your hosting package can use for a single function.<\/li>\n\n\n\n<li>The maximum number of files that can be uploaded in one single request.<\/li>\n\n\n\n<li>The maximum amount of server memory that each PHP script can use.<\/li>\n\n\n\n<li>The maximum size of a file that can be uploaded.<\/li>\n\n\n\n<li>\u2026 and many more.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u27a1\ufe0f This feature can be turned on\/off in your customers\u2019 StackCP control panel<\/strong><\/p>\n<\/div>\n\n\n\n<div id=\"frameworks\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP frameworks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">PHP frameworks provide built-in features and code libraries, reducing the amount of original code you need to write.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Frameworks.png\" alt=\"\" class=\"wp-image-13603\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Frameworks.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Frameworks-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frameworks offer tools and libraries that speed up development. For instance, <a href=\"https:\/\/www.20i.com\/cakephp-hosting\" data-internallinksmanager029f6b8e52c=\"8\" title=\"cakephp\">CakePHP<\/a>\u2019s Bake command-line tool generates skeleton code quickly.<\/li>\n\n\n\n<li>Built-in functions mean less manual coding.<\/li>\n\n\n\n<li>Frameworks provide pre-built solutions for tasks like form validation, data sanitization, and CRUD operations.<\/li>\n\n\n\n<li>Frameworks enforce clean, organized code structures.<\/li>\n\n\n\n<li>While not a substitute for secure coding, frameworks minimize the risk of vulnerabilities.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">You can offer customers <a href=\"https:\/\/www.20i.com\/laravel-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">Laravel<\/a>, <a href=\"https:\/\/www.20i.com\/cakephp-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">CakePHP<\/a> and <a href=\"https:\/\/www.20i.com\/slim-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">Slim<\/a> as one-click installs on your hosting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Read our blog post about the <a href=\"https:\/\/www.20i.com\/blog\/best-php-frameworks\/\" target=\"_blank\" rel=\"noreferrer noopener\">best PHP frameworks<\/a>.<\/p>\n<\/div>\n\n\n\n<div id=\"myadmin\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">phpMyAdmin<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MySQL is the most popular database system used with PHP.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/phpMyAdmin.png\" alt=\"\" class=\"wp-image-13610\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/phpMyAdmin.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/phpMyAdmin-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">phpMyAdmin makes managing MySQL and MariaDB databases easier, via &nbsp;a web-based interface.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Common tasks such as managing databases, tables, columns, relations, indexes, users, and permissions can be performed through the user interface, while you retain the ability to execute custom SQL queries directly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><strong>\u27a1\ufe0f <\/strong>This feature can be turned on\/off in your customers\u2019 StackCP control panel<\/strong><\/p>\n<\/div>\n\n\n\n<div id=\"ioncube\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP Ioncube Loader<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you require PHP code encryption for your application, ionCube is a widely adopted solution.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Ioncube-Loader.png\" alt=\"\" class=\"wp-image-13604\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-Ioncube-Loader.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-Ioncube-Loader-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Designed to seamlessly integrate with both small-scale and enterprise-level applications, ionCube ensures that your PHP source code remains secure by rendering it unreadable and uneditable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When distributing an application, the PHP source code is typically processed through the ionCube encoder.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, encrypted code cannot be executed directly on the server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To address this, the ionCube loader decrypts the code on-the-fly, allowing the PHP engine to process it alongside the rest of the application.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For applications containing proprietary algorithms or requiring software licensing features, ionCube provides an effective solution to safeguard your source code.<\/p>\n<\/div>\n\n\n\n<div id=\"1click\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">One-click install PHP-based apps<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Some of the most popular Free Open Source Software are powered by PHP. Examples include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>WordPress<\/li>\n\n\n\n<li>Drupal<\/li>\n\n\n\n<li>Joomla<\/li>\n\n\n\n<li>OpenCart<\/li>\n\n\n\n<li>Moodle<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1250\" height=\"834\" src=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-One-click.png\" alt=\"\" class=\"wp-image-13606\" srcset=\"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/PHP-One-click.png 1250w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-300x200.png.webp 300w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-768x512.png.webp 768w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-370x247.png.webp 370w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-270x180.png.webp 270w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-570x380.png.webp 570w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-740x494.png.webp 740w, https:\/\/www.20i.com\/blog\/wp-content\/smush-webp\/2024\/07\/PHP-One-click-150x100.png.webp 150w\" sizes=\"auto, (max-width: 1250px) 100vw, 1250px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can pick and choose which of these apps you want to offer customers, and even set them to auto install when a package is created.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This opens up your target markets to include specialist and niche software users.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><strong>\u27a1\ufe0f <\/strong>All one-click apps can be turned on\/off in your customers\u2019 StackCP control panel<\/strong><\/p>\n<\/div>\n\n\n\n<div id=\"modules\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">PHP Modules<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The following modules are compiled into all of our supported PHP versions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.php.net\/manual\/book.pdo.php\" target=\"_blank\" rel=\"noreferrer noopener\">PDO<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.php.net\/manual\/book.soap.php\" target=\"_blank\" rel=\"noreferrer noopener\">SOAP<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.php.net\/manual\/book.mbstring.php\" target=\"_blank\" rel=\"noreferrer noopener\">MBString<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.php.net\/manual\/en\/book.simplexml.php\" target=\"_blank\" rel=\"noreferrer noopener\">XML<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div id=\"final-thoughts\" class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h2 class=\"wp-block-heading\">Final thoughts<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Given PHP&#8217;s ubiquity in server-side programming and its integral role in powering WordPress, the leading CMS; ensuring your hosting services prominently feature PHP optimisation will help position your brand and convert more customers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>View our high performance <a href=\"https:\/\/www.20i.com\/us\/agency-hosting\" target=\"_blank\" rel=\"noreferrer noopener\">agency hosting<\/a> plans, for all of these features and more.<\/em><\/p>\n<\/div>\n\n\n<div class='code-block code-block-2' style='margin: 8px 0; clear: both;'>\n\n<div class='ai-rotate ai-unprocessed ai-rotate-2-81612609' data-shares='WzUwLDEwMF0=' style='position: relative;'>\n<div class=\"ai-rotate-option\" data-index=\"1\" data-name=\"UmVzZWxsZXIgSG9zdGluZw==\" data-code=\"Cjxocj4KPGJyIC8+CjxhIGhyZWY9Imh0dHBzOi8vd3d3LjIwaS5jb20vcmVzZWxsZXItaG9zdGluZyIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL3d3dy4yMGkuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDMvQmxvZy1BZC1SZXNlbGxlci0xMjAweDYyNS0xLnBuZyIgbG9hZGluZz0ibGF6eSIgYWx0PSJVbmxpbWl0ZWQgUmVzZWxsZXIgSG9zdGluZyI+PC9hPgoK\">\n<\/div>\n<div class=\"ai-rotate-option\" data-index=\"2\" data-name=\"MjBpIFlvdVR1YmU=\" data-code=\"Cjxocj4KPGJyIC8+CjxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL0AyMGlob3N0aW5nP3N1Yl9jb25maXJtYXRpb249MSIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL3d3dy4yMGkuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDUvMjBpLVlvdVR1YmUtMTIwMHg2MjUtMS5wbmciIGxvYWRpbmc9ImxhenkiIGFsdD0iMjBpIFlvdVR1YmUiPjwvYT4=\">\n<\/div>\n<\/div>\n<script>if (typeof ai_js_code == 'boolean') {var ai_block_div = document.querySelector ('.ai-rotate-2-81612609'); ai_process_rotation (ai_block_div); ai_block_div.classList.remove ('ai-rotate-2-81612609');};<\/script>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"PHP is used by 76% of all websites that have some form of server-side programming language. It also&hellip;","protected":false},"author":13,"featured_media":13612,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"ub_ctt_via":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"csco_singular_sidebar":"","csco_page_header_type":"","csco_page_load_nextpost":"","footnotes":""},"categories":[48],"tags":[50,81,79,70],"class_list":["post-13406","post","type-post","status-publish","format-standard","has-post-thumbnail","category-reseller-hosting","tag-20i","tag-internet","tag-web-development","tag-web-hosting","cs-entry"],"featured_image_src":"https:\/\/www.20i.com\/blog\/wp-content\/uploads\/2024\/07\/Selling-PHP-Hosting.png","author_info":{"display_name":"Matthew Telfer","author_link":"https:\/\/www.20i.com\/blog\/author\/matthew-telfer\/"},"_links":{"self":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/comments?post=13406"}],"version-history":[{"count":17,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13406\/revisions"}],"predecessor-version":[{"id":19067,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/posts\/13406\/revisions\/19067"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/media\/13612"}],"wp:attachment":[{"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/media?parent=13406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/categories?post=13406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.20i.com\/blog\/wp-json\/wp\/v2\/tags?post=13406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}