PHP check mobile browser

function isMobileDevice(){
$aMobileUA = array(
‘/iphone/i’ => ‘iPhone’,
‘/ipod/i’ => ‘iPod’,
‘/ipad/i’ => ‘iPad’,
‘/android/i’ => ‘Android’,
‘/blackberry/i’ => ‘BlackBerry’,
‘/webos/i’ => ‘Mobile’
);

//Return true if Mobile User Agent is detected
foreach($aMobileUA as $sMobileKey => $sMobileOS){
if(preg_match($sMobileKey, $_SERVER[‘HTTP_USER_AGENT’])){
return true;
}
}
//Otherwise return false..
return false;
}

PHP check mobile browser

PHP install from source error on Ubuntu

1. configure: error: xml2-config not found. Please check your libxml2 installation.

# sudo apt-get install libxml2-dev

2. configure: error: Could not find pcre.h in /usr

# sudo apt-get install libpcre3-dev

3. configure: error: Please reinstall the BZip2 distribution

#sudo apt-get install libbz2-dev

4. configure: error: Please reinstall the libcurl distribution

# sudo apt-get install libcurl4-openssl-dev

5. configure: error: DBA: Could not find necessary header file(s). checking for db4 major version… configure: error: Header contains different version

# sudo apt-get install libdb4.8-dev

6. configure: error: libjpeg.(a|so) not found.

# sudo apt-get install libjpeg-dev

7. configure: error: libpng.(a|so) not found.

# sudo apt-get install libpng12-dev

8. configure: error: libXpm.(a|so) not found.

# sudo apt-get install libxpm-dev

9. configure: error: freetype.h not found.

# sudo apt-get install libfreetype6-dev

10. configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path

# sudo apt-get install postgresql-server-dev-9.1

11. configure: error: Your t1lib distribution is not installed correctly. Please reinstall it.

# sudo apt-get install libt1-dev

12. configure: error: Unable to find gd.h anywhere under /usr

# sudo apt-get install libgd2-xpm-dev

13. configure: error: Unable to locate gmp.h

# sudo apt-get install libgmp-dev

14. configure: error: Cannot find MySQL header files under /usr.

# sudo apt-get install libmysqlclient-dev

15. configure: error: sasl.h not found!

# sudo apt-get install libsasl2-dev

16. configure: error: Please reinstall libmhash – I cannot find mhash.h

# sudo apt-get install libmhash-dev

17. checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h’ not found!

# sudo apt-get install unixodbc-dev

18. configure: error: Directory /usr is not a FreeTDS installation directory

# sudo apt-get install freetds-dev

19. configure: error: Cannot find pspell

# sudo apt-get install libpspell-dev

20. configure: error: SNMP sanity check failed. Please check config.log for more information.

#sudo apt-get install libsnmp-dev

21. configure: error: Cannot find libtidy

# sudo apt-get install libtidy-dev

22. configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

# sudo apt-get install libxslt1-dev

23. configure: error: mcrypt.h not found. Please reinstall libmcrypt.

# sudo apt-get install libmcrypt-dev

24# configure: error: Cannot find OpenSSL’s libraries

# ./configure –with-libdir=/lib/x86_64-linux-gnu

25. configure: error: You’ve configured extension pdo_sqlite to build statically, but it depends on extension pdo, which you’ve configured to build shared. You either need to build pdo_sqlite shared or build pdo statically for the build to be successful.

# ./configure –with-pdo-sqlite=shared –with-sqlite=shared

PHP install from source error on Ubuntu

PHP errors when install from source on Centos RHEL

ERROR:

checking for BZip2 support… yes
checking for BZip2 in default path… not found
configure: error: Please reinstall the BZip2 distribution

Solution:

yum install bzip2-devel

ERROR:

checking for cURL support… yes
checking if we should use cURL for url streams… no
checking for cURL in default path… not found
configure: error: Please reinstall the libcurl distribution –
easy.h should be in /include/curl/

Solution:

yum install curl-devel

ERROR:

checking for fabsf… yes
checking for floorf… yes
configure: error: jpeglib.h not found.

checking for fabsf… yes
checking for floorf… yes
checking for jpeg_read_header in -ljpeg… yes
configure: error: png.h not found.

Solution:

yum install libjpeg-devel

ERROR:

checking for curl_multi_strerror in -lcurl… yes
checking for QDBM support… no
checking for GDBM support… no
checking for NDBM support… no
configure: error: DBA: Could not find necessary header file(s).

Solution:

yum install db4-devel

ERROR:

checking for png_write_image in -lpng… yes
If configure fails try –with-xpm-dir=

configure: error: freetype.h not found.

Solution:

Fix: Reconfigure your PHP with the following option.
–with-xpm-dir=/usr

ERROR:

checking for png_write_image in -lpng… yes
configure: error: libXpm.(a|so) not found.

Solution:

yum install libXpm-devel

ERROR:

checking for bind_textdomain_codeset in -lc… yes
checking for GNU MP support… yes
configure: error: Unable to locate gmp.h

Solution:

yum install gmp-devel

ERROR:

checking for utf8_mime2text signature… new
checking for U8T_DECOMPOSE…
configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.

Solution:

yum install libc-client-devel

ERROR:

checking for LDAP support… yes, shared
checking for LDAP Cyrus SASL support… yes
configure: error: Cannot find ldap.h

Solution:

yum install openldap-devel

ERROR:

checking for mysql_set_character_set in -lmysqlclient… yes
checking for mysql_stmt_next_result in -lmysqlclient… no
checking for Oracle Database OCI8 support… no
checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h’ not found!

Solution:

yum install unixODBC-devel

ERROR:

checking for PostgreSQL support for PDO… yes, shared
checking for pg_config… not found
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path

Solution:

yum install postgresql-devel

ERROR:

checking for sqlite 3 support for PDO… yes, shared
checking for PDO includes… (cached) /usr/local/src/php-5.3.7/ext
checking for sqlite3 files in default path… not found
configure: error: Please reinstall the sqlite3 distribution

Solution:

yum install sqlite-devel

ERROR:

checking for utsname.domainname… yes
checking for PSPELL support… yes
configure: error: Cannot find pspell

Solution:

yum install aspell-devel

ERROR:

checking whether to enable UCD SNMP hack… yes
checking for default_store.h… no

checking for kstat_read in -lkstat… no
checking for snmp_parse_oid in -lsnmp… no
checking for init_snmp in -lsnmp… no
configure: error: SNMP sanity check failed. Please check config.log for more information.

Solution:

yum install net-snmp-devel

ERROR:

checking whether to enable XMLWriter support… yes, shared
checking for xml2-config path… (cached) /usr/bin/xml2-config
checking whether libxml build works… (cached) yes
checking for XSL support… yes, shared
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

Solution:

yum install libxslt-devel

ERROR:

configure: error: xml2-config not found. Please check your libxml2 installation.

Solution:

yum install libxml2-devel

ERROR:

checking for PCRE headers location… configure: error: Could not find pcre.h in /usr

Solution:

yum install pcre-devel

ERROR:

libtool: link: cannot find the library `/usr/lib/libidn.la’ or unhandled argument `/usr/lib/libidn.la’
make: *** [sapi/cgi/php-cgi] Error 1

Solution:

cd /usr/src/
wget http://ftp.gnu.org/gnu/libidn/libidn-1.26.tar.gz
tar -zvxf libidn-1.26.tar.gz
cd libidn-1.26
./configure
make
make install
ln -s /usr/local/lib/libidn.la /usr/lib/libidn.la

ERROR:

libtool: link: `/usr/lib/libxml2.la’ is not a valid libtool archive
make: *** [ext/xsl/xsl.la] Error 1

Solution:

cd /usr/src/
wget ftp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
tar -zvxf libxml2-2.7.3.tar.gz
cd libxml2-2.7.3
./configure –prefix=/usr
make
make install

ERROR:

configure: error: Your t1lib distribution is not installed correctly. Please reinstall it.

Solution:

yum install t1lib-devel.x86_64

ERROR:

configure: error: mcrypt.h not found. Please reinstall libmcrypt.

Solution:

yum install libmcrypt-devel.x86_64

ERROR:

configure: error: Cannot find libtidy

Solution:

yum install libtidy libtidy-devel

PHP errors when install from source on Centos RHEL

PHP install from source errors

1. Configure: error: Please reinstall the BZip2 distribution
# yum install bzip2-devel
2. Configure: error: DBA: Could not find necessary header file(s).
# yum install gdbm-devel
# yum install db4-devel
3. Configure: error: libjpeg.(a|so) not found.
# yum install libjpeg-devel
4. Configure: error: libpng.(a|so) not found.
# yum install libpng-devel
5. Configure: error: freetype.h not found.
# yum install freetype-devel
6. configure: error: Please reinstall the libcurl distribution
# yum install curl
# yum install curl-devel
7. Configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
# yum install libxslt-devel >>>> fixed
8. xml2-config not found. Please check your libxml2 installation.
# yum install libxml2-devel
9. Error Perl-URI
#wget http://mirror.centos.org/centos-5/5/os/i386/CentOS/perl-URI-1.35-3.noarch.rpm
#rpm -i perl-URI-1.35-3.noarch.rpm
10. Configure: error: utf8_mime2text() has new signature
#yum install libc-client-devel
11. Configure: error: libXpm.(a|so) not found.
# yum install gd-devel
#up2date -i gd-devel
12. configure: error: Cannot find OpenSSL’s
# yum install openssl-devel
13. Checking for PCRE headers location… configure: error: Could not find pcre.h in /usr
# yum install pcre-devel
14. Configure: error: Unable to locate gmp.h
# yum install gmp-devel
15. configure: error: Cannot find pspell
# yum install aspell-devel
16. The ‘links’ package is required for this functionality.
# yum search links
# yum install elinks
17. Error : [warn] module php5_module is already loaded, skipping
# edit httpd.conf terus Uncomment : #LoadModule php5_module modules/libphp5.so
18. Configure: error: Did not find pcre-config script at /usr/local
# yum -y install pcre-devel
19. warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID e8562897
# rpm -import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
ERROR: cannot restore segment prot after reloc: Permission denied
Solution:
chcon -t texrel_shlib_t /etc/httpd/modules/libphp5.so
20. Configure: error: mcrypt.h not found. Please reinstall libmcrypt
# yum -y install libmcrypt-devel

PHP install from source errors