centos6.5-x64
yum install httpd php php-pdo
这样才有对sqlite3的支持,不安装php-pdo,就没有相应的支持。
https://hello.firefox.com/DWtXIEzWRes
PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据。PDO随PHP5.1发行,在PHP5.0的PECL扩展中也可以使用,无法运行于之前的PHP版本。
从版本 4.3.0 开始,PHp提供了一种新类型的 SAPI(Server Application Programming Interface,服务端应用编程端口)支持,名为 CLI,意为 Command Line Interface,即命令行接口。顾名思义,该 SAPI 模块主要用作 PHp的开发外壳应用。CLI SAPI和其它 SAPI模块相比有很多的不同之处,我们将在本章中详细阐述。值得一提的是,CLI和 CGI 是不同的 SAPI,尽管它们之间有很多共同的行为。
CLI SAPI 最先是随 PHp4.2.0 版本发布的,但仍旧只是一个实验性的版本,并需要在运行 ./configure 时加上 --enable-cli参数。从 PHp4.3.0 版本开始,CLI SAPI 成为了正式模块,--enable-cli参数会被默认得设置为 on,也可以用参数 --disable-cli来屏蔽。
从 PHp4.3.0开始,CLI/CGI 二进制执行文件的文件名、位置和是否存在会根据 PHp在系统上的安装而不同。在默认情况下,当运行 make 时,CGI 和 CLI 都会被编译并且分别放置在 PHp源文件目录的 sapi/cgi/php 和 sapi/cli/php 下。可以注意到两个文件都被命名为了 php。在 make install的过程中会发生什么取决于配置行。如果在配置的时候选择了一个 SAPI 模块,如 apxs,或者使用了 --disable-cgi参数,则在 make install 的过程中,CLI 将被拷贝到 {pFIX}/bin/php,除非 CGI 已经被放置在了那个位置。因此,例如,如果在配置行中有 --with--apxs,则在 make install 的过程中,CLI 将被拷贝到 {pFIX}/bin/php。如果希望撤销 CGI 执行文件的安装,请在 make install之后运行 make install-cli。或者,也可以在配置行中加上 --disable-cgi参数。
开发环境 windows开发环境
http://www.zend.com/en/products/studio zend studio IDE
http://help.eclipse.org/mars/index.jsp
xampp
linux开发环境
php测试页面
[root@84-monitor php]# cat /var/www/html/aa.php
php工具
[root@222-comecs tes]# php -v PHP 5.3.3 (cli) (built: Aug 6 2014 05:54:27) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 相当于phpinfo页面 [root@222-comecs tes]# php -i [root@222-comecs tes]# php -m [PHP Modules] bz2 calendar Core ctype curl libxml mbstring oci8 openssl pcntl pcre PDO zip zlib [Zend Modules] [root@222-comecs tes]# php --ini Configuration File (php.ini) Path: /etc Loaded Configuration File: /etc/php.ini Scan for additional .ini files in: /etc/php.d Additional .ini files parsed: /etc/php.d/curl.ini, /etc/php.d/dom.ini, /etc/php.d/fileinfo.ini, /etc/php.d/gd.ini, /etc/php.d/imap.ini, /etc/php.d/json.ini, /etc/php.d/mbstring.ini, /etc/php.d/oci8.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/phar.ini, /etc/php.d/posix.ini, /etc/php.d/snmp.ini, /etc/php.d/soap.ini, /etc/php.d/sqlite3.ini, /etc/php.d/sysvmsg.ini, /etc/php.d/sysvsem.ini, /etc/php.d/sysvshm.ini, /etc/php.d/wddx.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlrpc.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini, /etc/php.d/zip.ini
php command line usage 三种方法执行php代码 php scripts php -r 'print_r(get_defined_constants());' 15:59:53 9 /var/www/html:#cat c.php php if(defined('STDIN') ) echo("Running from CLI"); else echo("Not Running from CLI"); ?> 15:59:56 10 /var/www/html:#php c.php Running from CLI 16:00:03 11 /var/www/html:# 16:02:03 12 /var/www/html:#cat c.php php echo "Are you sure you want to do this? Type 'yes' to continue: "; $handle = fopen ("php://stdin","r"); $line = fgets($handle); if(trim($line) != 'yes'){ echo "ABORTING!\n"; exit; } echo "\n"; echo "Thank you, continuing...\n"; ?> 16:02:16 13 /var/www/html:#php c.php Are you sure you want to do this? Type 'yes' to continue: yes Thank you, continuing... 16:02:26 14 /var/www/html:# 16:15:52 23 /var/www/html:#cat c.php php // Our simple test application named test.php echo getcwd(), "\n"; ?> 16:15:58 24 /var/www/html:#php c.php /var/www/html 16:23:27 30 /var/www/html:#php -r 'var_dump($argv);' array(1) { [0]=> string(1) "-" } 16:24:59 32 /var/www/html:#php -r 'var_dump($argv);' -- -h array(2) { [0]=> string(1) "-" [1]=> string(2) "-h" } 16:24:39 31 /var/www/html:#php -r 'var_dump($argc);' int(1) 16:24:59 32 /var/www/html:# 16:25:59 33 /var/www/html:#php -r 'print_r(get_defined_constants());' Array ( [E_ERROR] => 1 [E_RECOVERABLE_ERROR] => 4096 [E_WARNING] => 2 [E_PARSE] => 4 [STDIN] => Resource id #1 [STDOUT] => Resource id #2 [STDERR] => Resource id #3 ) 16:33:37 41 /var/www/html:#php -r 'fwrite(STDERR, "stderr\n");' stderr
php通过oci8查询oracle数据库内容,并在页面上展示出来
php $conn = oci_connect('flt', 'flt123', '192.168.2.220/flt'); // 建立连接 if (!$conn) { $e = oci_error(); print htmlentities($e['message']); exit; } $query = 'select member from v$logfile'; // 查询语句 $stid = oci_parse($conn, $query); // 配置SQL语句,准备执行 if (!$stid) { $e = oci_error($conn); print htmlentities($e['message']); exit; } $r = oci_execute($stid, OCI_DEFAULT); // 执行SQL。OCI_DEFAULT表示不要自动commit if(!$r) { $e = oci_error($stid); echo htmlentities($e['message']); exit; } // 浏览器中打印执行结果 print '
'.($item?htmlentities($item):' ').' | '; print ($item?htmlentities($item)); } print '
连接mysql数据库,在页面上显示内容,一开始读到了数据,但出现了乱码。所以加入了这一行mysql_query("set names 'utf8'");
php $con = mysql_connect("localhost","root","123456"); if (!$con) { die('Could not connect: ' . mysql_error()); } echo "connect sucessful
"; mysql_select_db("ultrax", $con); /* $sql = "CREATE TABLE Persons ( FirstName varchar(15), LastName varchar(15), Age int )"; mysql_query($sql,$con); */ mysql_query("set names 'utf8'"); $result = mysql_query("select type,name,status from pre_forum_forum"); while($row = mysql_fetch_array($result)) { echo $row['type'] . " " . $row['name'] . " " . $row['status']; echo "
"; } mysql_close($con); ?>
$con = mysql_connect("localhost","root","123456");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
echo "connect sucessful
";
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
$sql = "CREATE TABLE Persons
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE Persons
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>