php extension compatability with php 5.6.6 or higher - php

Is any one installed the following library or extension (curl,libcurl,pearl,pecl,mongodb driver for php) with php 5.6.6 or higher not 7 in Ubuntu 14
I have used all of this with php 5.5 now I afraid of version compatibility,
if any one ensure me to can I migrate from Ubuntu 12.0.4 to 14 and php 5.5 to 5.6.6 or higher ?

The library or extension are third party softwares which they are developed by there own and able to bind in PHP or any other language.
E.g. CURL library is developed in C and it can be used or bind in many different languages.
Also it is good to stay always up-to date, while upgrading to new version E.g PHP, you can check the change-log of version and base on that you can understand, Is any library supporting change or not.
Many Web Servers are always try to upgrade or staying latest versions of languages or you can also inform them to upgrade server base on requirement and they will do, so it is no worry about server configuration.
From my system I upgraded from Ubuntu 12.4 to 14.4 and currently PHP version is 5.5.9 and every library is working fine.
And thing is that when the language version upgraded some good stuff also come, some bugs are fixed. So its cool stuff to always stay up

Related

PHPSpreadsheet issue with PHP v5.5

This isn't particularly a coding question.
I have a script running locally (PHP V5.6) and it's absolutely perfect.
However, I FTPd it to our dev server to run as a cron and it failed. Our server has php v5.5 running for dependancy issues. Is there any way I can user composer require to install phpspreadsheet on a machine running PHP 5.5?
PHPSpreadsheet was deliberately written for PHP >=5.6.0 because I was fed up with the way people had made death threats to me for even suggesting that the minimum version of PHP required to run its predecessor (PHPExcel) should be increased from PHP 5.2 to take advantage of newer features of the language to reduce the codebase and memory footprint, and make it more performant
PHPSpreadsheet uses features of PHP that are only available in PHP 5.6 or above, and will soon drop support for even that version when Security support ends for that version of PHP on 31 Dec 2018, and require a minimum of PHP 7.1.0
If you need to create spreadsheets using older unsupported versions of PHP, then you can't use PHPSpreadsheet, and can only use its predecessor PHPExcel
No, PhpSperadsheet requires v5.6 or above.
In the docs # https://phpspreadsheet.readthedocs.io/en/develop/
Software requirements
The following software is required to develop using PhpSpreadsheet:
**PHP version 5.6 or newer**
PHP extension php_zip enabled
PHP extension php_xml enabled
PHP extension php_gd2 enabled (if not compiled in)
Try upgrading PHP.

Drupal 6 site migration issue in PHP 7.2

We have a web server with Ubuntu 12.04. we are running a drupal website in this server and we used PHP 5.3 on this server.
As part of server migration, I am planning to up a new Ubuntu 16.04 server with latest PHP 7.2, After migrating above specified Drupal application into it, We are getting a white screen when we try to access this site.Our developer says that it is because of some of the drupal core functionality is not working with new PHP 7.2, because some of the functionality that used D6 is deprecated in Latest PHP. So we need a Drupal version upgrade to 8. System upgrade to D6 will require more work. So can anyone suggest any alternative options other than Drupal version upgrade.
Also we are using php memcached in old server, PHP 7.2 is not provided memcached
Even Drupal 7 has issues with PHP 7. The core should work, but lot of 3rd party modules won't and I wouldn't recommend running Drupal 7 site on PHP 7.
For Drupal 6 situation is most likely even worse so if you don't want to end up patching manually large number of modules and D6 core I would advise you not to do this. Try to provide older PHP version or this can easy become never ending nightmare.

CodeIgniter compatibility with PHP version?

I am using CodeIgniter 2.2.6 with PHP 5.5 and it works fine. Now I want to upgrade PHP to version 5.6.6 my question is, is CodeIgniter compatible with PHP 5.6.6?
I can't upgrade CodeIgniter to a new version because I have many models based on Version 2.2.6.
Codeigniter 2.2x IS COMPATIBLE with PHP7.1+.
You only need to remember:
Models/classes and so on are case-sensitive and have to start from capital letter
The same with names of files in application folder
There are problems with mysql (very old, not used now driver) so you have to use mysqli driver (but it is already implemented in CI2, check if you're not using it already)
if you have session table sometimes you'll have to truncate this table, clear cache and populate it again.
Check compatibility of software in third_party folder if you have problems - CI is not responsible for that issues.
In my case everything is working smoothly with the newest version of bootstrap & jQuery installed. However, I'm not using hooks, advanced functions and so on.
NOTE, that in most cases you can force server to use older php version using .htaccess and AddHandler command:
AddHandler application/x-httpd-php56 .php
This is last version of PHP before PHP7.
And last but not least - of course I don't recommend to use this very old version of CI, however in my opinions - in my cases - there is no sense to migrate from CI2x to CI3, in 2018 it is better to wait for CI4 and then migrate.
The Server Requirements page in the user guide says that CodeIngiter 2 requires "PHP version 5.1.6 or newer".
Note that PHP 5.6 will stop receiving active support in less than a month, so you might want to go right to version 7. PHP 5.6 should receive security patches until the end of 2018.
I can't upgrade CodeIgniter to a new version because I have many models based on Version 2.2.6.
Note also that CodeIgniter 2 is no longer supported:
the current version (2.2.6) came out in October, 2015.
CodeIgniter 2 has reached its end-of-life for support and updates, as of October 31, 2015. No further updates are planned.
We encourage you to upgrade to CodeIgniter 3.x!
There is an upgrade path from version 2.2 to version 3.1, which I encourage you to explore:
First, read Upgrading from 2.2.x to 3.0.x
Then, read the steps for performing minor upgrades
This probably isn't as hard as you think, and with the security implications I believe it's worthwhile.

Upgraded from PHP 5.3 to PHP 5.6.5 and now no php_oci8.dll

I use php_oci8.dll in our application to access an Oracle 8 database server. I upgraded our PHP version from 5.3 to 5.6.5 and now there is no php_oci8.dll in the ext/ folder.
Can I just copy it from the old version?
php_oci8.dll is a very old library used with very old version of Oracle
Now there is a newer version for this library, like php_oci8_11g
The question is : what is the version of Oracle that you use ?
From http://php.net/manual/en/oci8.requirements.php
The OCI8 1.4 extension is included with PHP 5.3, PHP 5.4 and PHP 5.5. It is also available from PECL.
Read: not incliuded in PHP 5.6 (which is a good thing, not pulling in every single DB interface into the main tree)
Just download that stuff from PECL.
You might need to rebuild it from source, though, if whatever Oracle DB client Libraries you use don't match the needs of the OCI8 in its current version
EDIT: Don't do this, OP. Are you really using Oracle 8i? That has seen its last update in 2003 and should not be used for security reasons, any more. Seriously, how do you even run this on a modern Operating system? Or do you have a Windows XP machine running as a server exposed to the internet somewhere?!

What are the technical differences between the Thread Safe and Non Thread safe PHP Windows Installation Packages?

I'm currently about to install PHP for an Apache/Windows-based development environment, but it seems I'm about to fall at the first hurdle: Choosing the right package to install.
PHP is available in no less than four flavours:
VC9 x86 Non Thread Safe
VC9 x86 Thread Safe
VC6 x86 Non Thread Safe
VC6 x86 Thread Safe
What's the difference between these versions in a practical sense?
If this wasn't complicated enough, version 5.3 of PHP is only available in VC9 (with 5.2 coming with the VC6 packages). And yet, according to the PHP site, you should not use VC9 with Apache... So why does Apache get the older version?
It's all very confusing and I'd like some help understanding the choices.
After a lot of research, I've managed to find my own answers to this question.
In its most basic form, the answer is: What version of PHP you should install comes down what webserver you are running.
Here's a deeper explanation of the terms used in picking a version of PHP based on what I learned:
VC6 vs VC9
Firstly, different versions of Apache for Windows are compiled with different compilers. For example, the versions on Apache.org are designed to be compiled using Microsoft Visual C++ 6, also known as VC6. This compiler is very popular, but also very old. (It dates back to 1998.)
There are different versions of Apache made for different compilers. For example, the versions available for download from ApacheLounge.com are designed to be compiled with the popular and more much recent compiler, Microsoft Visual C++ 9 from 2008. Also known as VC9.
(Note: These two compilers are the two most popular options. So while it's possible to have a VC7, VC8, etc. compiled version of Apache, it's unlikely that you'll come across them.)
The use of this more recent compiler (VC9) is important because the latest versions of PHP are only being distributed in VC9 form (although older versions are still available for VC6).
On top of that, according to ApacheLounge there are numerous improvements when using a version of Apache compiled with VC9, "in areas like Performance, MemoryManagement and Stability".
If that wasn't enough, the developers of PHP made the following statement on their site:
Windows users: please mind that we do
no longer provide builds created with
Visual Studio C++ 6 (VC6). It is
impossible to maintain a high quality
and safe build of PHP for Windows
using this unmaintained compiler.
We recommend the VC9 Apache builds as
provided by ApacheLounge.
All PHP users should note that the PHP
5.2 series is NOT supported anymore. All users are strongly encouraged to
upgrade to PHP 5.3.6.
In all, this is an extremely compelling argument to use VC9 versions of Apache and PHP, if you ask me.
So if you're using a version of Apache from the official Apache site, it will be compiled with VC6, and as such, you should use the older version of PHP for that compiler. If you're using a version of Apache compiled with VC9, like the one available on ApacheLounge.com, you can use the latest version of PHP (for VC9).
For me, running a local development environment, it would be preferable to have the latest version of PHP, so a VC9 version of Apache is required, so I can use the VC9 version of PHP.
Thread Safe vs Non Thread Safe
Once again this comes down to your webserver. By default Apache is installed on Windows as Module, but it can be changed to run as FastCGI. There's plenty of differences between the two, but essentially FastCGI is more modern, faster, more robust, and more resource hungry. For someone running a local development environment, FastCGI might be overkill, but apparently lots of hosting companies run as FastCGI for the reasons I've stated, so there are good arguments for doing so in a development environment.
If you're running Apache (or IIS) as FastCGI (or CGI) then you want the Non Thread Safe version of PHP. If you're running Apache as default (as a Module), then you'll want the more traditional Thread Safe version.
Please note: This all only applies to Windows users.
I'm not going to bother with FastCGI (unless someone convinces me otherwise), so for me, I want the VC9 Thread Safe version of PHP.
And that's it.
Further reading:
Official statement regarding PHP and VC6
Difference between PHP thread safe and non thread safe binaries
FastCGI at Wikipedia
FastCGI for IIS
Visual C++ at Wikipedia
Compile your own PHP (explanation of VC6/VC9)
Personally, I use a virtualised LAMP server. Every hosting service I use is on some flavour of Linux, and there are too many differences between WAMP and LAMP. Then I just use the default tasksel LAMP server for that version of Linux.
My actual setup right now is with VMWare (Fusion on Mac, Player on Windows). I have 3 VMs - one for PHP5.3 with Ubuntu 10.04 LTS, and another for PHP 5.1 on Ubuntu 8.04 LTS. (One of the hosts I use is on RedHat, which currently supports only PHP 5.1). I have a third VM for RubyOnRails dev.
In other words, I try to get my development environment as close to my production environment as possible. So work out what version of Apache and PHP is on your host, and use that as your guide.

Categories