- 浏览: 2538962 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (676)
- linux运维 (157)
- php (65)
- mysql (78)
- nginx (27)
- apche (18)
- framework (6)
- windows (9)
- IDE工具 (23)
- struts2 (7)
- java (13)
- 移动互联网 (14)
- memcache redis (23)
- shell基础/命令/语法 (37)
- shell (50)
- puppet (4)
- C (11)
- python (9)
- 产品经理 (27)
- Sphinx (4)
- svn (12)
- 设计构建 (12)
- 项目管理 (44)
- SEO (1)
- 网站架构 (26)
- 审时度势 (42)
- 网络 (14)
- 激发事业[书&视频] (81)
- 其它 (12)
- 摄影 (8)
- android (21)
最新评论
-
zhongmin2012:
原文的书在哪里
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
renzhengzhi:
你好,请问个问题,从master同步数据到slave的时候,s ...
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
ibc789:
你好,看了你的文章,我想请教个问题, 我在用 redis的时候 ...
redis 的两种持久化方式及原理 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器
-------------------------------------------简单实例
首先要找到php执行文件
[root@kolvin centos]# whereis php
php: /usr/bin/php /etc/php.d /etc/php.ini /usr/lib/php /usr/share/man/man1/php.1.gz
创建test.php文件,代码如下:
#!/usr/bin/php -q
<?
print("Hello, world!\n");
?>
#chmod +x ./test.php
#/usr/bin/php test.php
-------------------------------------php作为shell核对用户使用空间问题
#!/usr/bin/php -q
<?php
class db {
var $connection_id = "";
var $pconnect = 0;
var $shutdown_queries = array();
var $queries = array();
var $query_id = "";
var $query_count = 0;
var $record_row = array();
var $failed = 0;
var $halt = "";
var $query_log = array();
var $db_setting=array();
function connect($db_config){
if ($this->pconnect){
$this->connection_id = mysql_pconnect($db_config["host"], $db_config["admin"], $db_config["database_pwd"]);
}else{
$this->connection_id = mysql_connect($db_config["host"], $db_config["admin"], $db_config["database_pwd"]);
}
if ( ! $this->connection_id ){
$this->halt("Can not connect MySQL Server");
}
if ( ! @mysql_select_db($db_config["database"], $this->connection_id) ){
$this->halt("Can not connect MySQL Database");
}
if ($db_config["charset"]) {
@mysql_unbuffered_query("SET NAMES '".str_replace("-","",$db_config["charset"]."'"));
}
$this->db_setting=$db_config;
return true;
}
function query($query_id, $query_type='mysql_query'){
$this->query_id = $query_type($query_id, $this->connection_id);
$this->queries[] = $query_id;
if (! $this->query_id ) {
$this->halt("error:\n$query_id");
}
$this->query_count++;
return $this->query_id;
}
function query_unbuffered($sql=""){
return $this->query($sql, 'mysql_unbuffered_query');
}
function fetch_array($sql = ""){
if ($sql == "") $sql = $this->query_id;
$this->record_row = @mysql_fetch_array($sql, MYSQL_ASSOC);
return $this->record_row;
}
function shutdown_query($query_id = ""){
$this->shutdown_queries[] = $query_id;
}
function affected_rows() {
return @mysql_affected_rows($this->connection_id);
}
function num_rows($query_id="") {
if ($query_id == "") $query_id = $this->query_id;
return @mysql_num_rows($query_id);
}
function get_errno(){
$this->errno = @mysql_errno($this->connection_id);
return $this->errno;
}
function insert_id(){
return @mysql_insert_id($this->connection_id);
}
function query_count() {
return $this->query_count;
}
function free_result($query_id=""){
if ($query_id == "") $query_id = $this->query_id;
@mysql_free_result($query_id);
}
function close_db(){
if ( $this->connection_id ) return @mysql_close( $this->connection_id );
}
function get_table_names(){
$result = mysql_list_tables($this->db_setting["database"]);
$num_tables = @mysql_numrows($result);
for ($i = 0; $i < $num_tables; $i++) {
$tables[] = mysql_tablename($result, $i);
}
mysql_free_result($result);
return $tables;
}
function get_result_fields($query_id=""){
if ($query_id == "") $query_id = $this->query_id;
while ($field = mysql_fetch_field($query_id)) {
$fields[] = $field;
}
return $fields;
}
function halt($the_error=""){
$message = $the_error."<br/>\r\n";
$message.= $this->get_errno() . "<br/>\r\n";
$sql = "INSERT INTO `db_error`(pagename, errstr, timer) VALUES('".$_SERVER["PHP_SELF"]."', '".addslashes($message)."', ".time().")";
@mysql_unbuffered_query($sql);
if (DEBUG==true){
echo "<html><head><title>MySQL database error</title>";
echo "<style type=\"text/css\"><!--.error { font: 11px tahoma, verdana, arial, sans-serif, simsun; }--></style></head>\r\n";
echo "<body>\r\n";
echo "<blockquote>\r\n";
echo "<textarea class=\"error\" rows=\"15\" cols=\"100\" wrap=\"on\" >" . htmlspecialchars($message) . "</textarea>\r\n";
echo "</blockquote>\r\n</body></html>";
exit;
}
}
function __destruct(){
$this->shutdown_queries = array();
$this->close_db();
}
function sql_select($tbname, $where="", $limit=0, $fields="*", $orderby="id", $sort="DESC"){
$sql = "SELECT ".$fields." FROM `".$tbname."` ".($where?" WHERE ".$where:"")." ORDER BY ".$orderby." ".$sort.($limit ? " limit ".$limit:"");
return $sql;
}
function sql_insert($tbname, $row){
foreach ($row as $key=>$value) {
$sqlfield .= $key.",";
$sqlvalue .= "'".$value."',";
}
return "INSERT INTO `".$tbname."`(".substr($sqlfield, 0, -1).") VALUES (".substr($sqlvalue, 0, -1).")";
}
function sql_update($tbname, $row, $where){
foreach ($row as $key=>$value) {
$sqlud .= $key."= '".$value."',";
}
return "UPDATE `".$tbname."` SET ".substr($sqlud, 0, -1)." WHERE ".$where;
}
function sql_delete($tbname, $where){
return "DELETE FROM `".$tbname."` WHERE ".$where;
}
function row_insert($tbname, $row){
$sql = $this->sql_insert($tbname, $row);
return $this->query_unbuffered($sql);
}
function row_update($tbname, $row, $where){
$sql = $this->sql_update($tbname, $row, $where);
return $this->query_unbuffered($sql);
}
function row_delete($tbname, $where){
$sql = $this->sql_delete($tbname, $where);
return $this->query_unbuffered($sql);
}
function row_select($tbname, $where="", $limit=0, $fields="*", $orderby="id", $sort="DESC"){
$sql = $this->sql_select($tbname, $where, $limit, $fields, $orderby, $sort);
return $this->row_query($sql);
}
function return_string(){
return $this->db_setting;
}
function row_select_one($tbname, $where, $fields="*", $orderby="id"){
$sql = $this->sql_select($tbname, $where, 1, $fields, $orderby);
return $this->row_query_one($sql);
}
function row_query($sql){
$rs = $this->query($sql);
$rs_num = $this->num_rows($rs);
$rows = array();
for($i=0; $i<$rs_num; $i++){
$rows[] = $this->fetch_array($rs);
}
$this->free_result($rs);
return $rows;
}
function row_query_one($sql){
$rs = $this->query($sql);
$row = $this->fetch_array($rs);
$this->free_result($rs);
return $row;
}
function row_count($tbname, $where=""){
$sql = "SELECT count(id) as row_sum FROM `".$tbname."` ".($where?" WHERE ".$where:"");
$row = $this->row_query_one($sql);
return $row["row_sum"];
}
function get_version(){
return mysql_get_server_info();
}
}
$db_config=array(
'host'=>'localhost',
'admin'=>'root',
'charset'=>'utf-8',
'database_pwd'=>'2009',
'database'=>'***',
);
$db=new db();
$db->connect($db_config);
$sql="select id,u_sn,username,space_size,space_used from member where space_used!='' order by id desc ";
$result=$db->query($sql);
if($result)
{
while($tmp_array=$db->fetch_array($result))
{
$sql2="select sum(size) as all_size from seeds where u_id = ".$tmp_array['id'];
$result2=$db->query($sql2);
$tmp_array2=$db->fetch_array($result2);
if($tmp_array['space_used']!=$tmp_array2['all_size'])
{
$sql="update member set space_used=".$tmp_array2['all_size']." where id=".$tmp_array['id'];
$db->query($sql);
}
}
}else
{
print("no member!");
}
?>
发表评论
-
wamp 升级php apache mysql
2014-02-18 14:30 1188wamp对于日常开发来说会增添非常大的方便 但是对于集成 ... -
[被震撼到了]我的2009年自我反省【也名10问PHP程序员】php程序员进阶篇
2012-10-29 11:22 10061.首先看了PHP的源码API函数 ,对于许多口水仗的争论一 ... -
五种常见的PHP设计模式
2012-08-15 13:37 1097原文地址:http://www.ibm.com/develop ... -
PHP的Realpath Cache
2012-07-03 09:53 3756PHP的缓存有很多种,包括输出缓冲(ob系列函数),opcod ... -
nginx+php-fmp 内存不释放
2012-06-20 11:01 5232由于服务器只有600M的内 ... -
[转]探究php底层运行机制
2012-04-17 14:36 2095http://www.myext.cn/Article/921 ... -
APC 缓存
2012-04-16 16:22 6111APC主要有两个作用,一是将php的编译缓存保存在共享内存中, ... -
【汇总】PHP-FPM 配置优化
2012-02-25 11:41 17345http://www.linuxidc.com/Linux/2 ... -
【推荐转载】谁贪占了我的系统资源 php-fpm
2012-02-16 14:12 1369测试人员向我们反映:在Facebook平台的游戏比其它平台 ... -
php代码性能分析工具:XHProf
2012-01-30 15:11 4887http://www.ooso.net/archives/52 ... -
神奇的Fastcgi_Finish_Request
2012-01-17 10:52 1252当PHP运行在FastCGI模式时,PHP FPM提供了一个名 ... -
PHP Warning: Xdebug MUST be loaded as a Zend extension in Unknown on line 0 解决办法
2011-11-07 17:18 3390;extension=php_xdebug.dll z ... -
【转】php 程序员
2011-11-05 12:01 947http://www.blags.org/php-pro ... -
cookies之PHPSESSID
2011-10-24 21:52 2950// 设置str function get_cooki ... -
并发同步
2011-10-11 14:26 1451============================= ... -
PHP核心编译配置选项列表
2011-09-15 11:21 1227PHP 的编译配置详细选项 ... -
Hudson_CI:PHP持续集成
2011-09-09 16:29 3095一、持续集成的概念 概念网上很多了,这里就不再详细说了。 ... -
try{}catch{}
2011-07-22 15:13 1217<?php /* 检测(try)、抛出(th ... -
PHP内存溢出Allowed memory size of 解决办法
2011-07-01 12:57 20595============================All ... -
?php消息队列
2011-06-22 09:45 2426php-通过共享内存实现消息队列和进程通信的两个类 h ...
相关推荐
PHP是一种广泛使用的服务器端脚本语言,尤其在Web开发领域中扮演着重要角色。当我们需要在Linux服务器上自动化执行一些PHP任务时,通过shell调用PHP脚本是一种常见且高效的方法。下面我们将详细探讨如何实现这一过程...
以上这些例子涵盖了基本的Shell脚本操作,如变量使用、条件判断、流程控制、系统命令调用以及定时任务设置等。通过学习和实践这些脚本,可以深入了解Shell脚本编程,提升系统管理能力。对于Linux系统管理员、开发者...
shell脚本 是一种shell编写的脚本程序。 shell编程跟Java、PHP 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执 行的脚本解释器就可以了。 为什么要学习和使用shell? Shell属于内置的脚本 程序开发...
Shell 是一个用 C 语言编写的程序,它被称为用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 脚本(shell script),是一种为 Shell 编写的脚本程序。 二、 Shell 运行环境和运行方式...
3. **调试支持**:作为一个专业的shell脚本编辑器,ShellEd集成了调试工具,允许用户设置断点、单步执行、查看变量值等,方便定位和解决问题。 4. **模板与宏**:ShellEd包含了预定义的shell脚本模板,可以快速创建...
Shell脚本是Linux/Unix系统中的程序设计语言,它提供了与操作系统进行交互的方式,用于自动化重复性任务。这里我们分享的是一份集大成的Shell脚本实例合集,涵盖了许多实用技巧,非常适合学习和日常使用。以下是部分...
Shell脚本是Linux或Unix系统中的批处理程序,是一种使用Shell命令语言编写的文本文件。通过编写Shell脚本,我们可以自动化一系列的命令执行过程,极大地提高了工作效率。在搭建LNMP环境时,一个完善的shell脚本可以...
在编写Shell脚本时,应遵循一定的规范,如指定脚本解释器、添加版本信息、使用合适的缩进和空格,以及使用.sh作为文件扩展名。变量命名应由字母、数字或下划线组成。 了解这些基础知识后,你就能开始编写简单的...
- **解释型语言**:如Shell脚本,其特点是无需编译过程,可以直接由解释器执行。 - **编译型语言**:如C/C++,这类语言需要先通过编译器转换为机器代码才能运行。 - **面向过程**:关注的是如何通过一系列步骤来解决...
【Shell脚本100例】是一份涵盖了各种实用Shell脚本的集合,适用于Linux运维人员,特别是对于服务器管理和自动化任务处理非常有帮助。以下是基于给出的部分内容详细讲解的几个重要知识点: 1. **Hello World脚本**:...
Shell不仅是一种命令语言,也是一种编程语言,可以用来编写脚本程序,即Shell脚本。Shell脚本类似于JavaScript和PHP,只需要文本编辑器编写代码,并通过脚本解释器执行。 Linux系统中有多种Shell,例如Bourne Shell...
除了这些脚本语言之外,Mac OS X还预装了一系列shell,用户可以根据自己的喜好选择使用: - **bash**:3.2 "Bourne-again" shell,来自GNU,是最常用的shell,也是Mac OS X的默认shell。 - **zsh**:4.3.4,Korn ...
1. **PHP作为Shell脚本语言**:通常,Shell脚本用于Linux或Unix系统中的命令行操作。然而,由于PHP具有丰富的文本处理和系统交互功能,它也可以用来编写Shell脚本。在文档的示例中,PHP被用来接收用户输入,创建、...
在IT行业中,Linux系统是广泛...总之,通过本次实验,你可以学习到Linux服务器管理、Nginx与PHP的部署及交互,以及如何使用shell脚本自动化这些过程,这对于成为一名合格的运维工程师或者开发者都是非常重要的技能。
此脚本通过PHP作为Shell脚本语言,结合Nginx的配置文件管理,提供了简单易用的命令行工具。但需要注意,直接在Shell中执行PHP可能存在命令注入的风险,因此在实际使用中,应该对用户输入进行严格验证,并确保所有...
【Shell脚本】Shell脚本主要有Bash(Bourne Again SHell)等多种类型,Bash是最常见的Linux默认Shell。它支持各种控制结构(如if-else、for、while循环)、变量、数组、函数,并且能调用系统内建命令和外部程序。...
Shell脚本是Linux/Unix系统中用于自动化任务的编程语言,它允许用户通过命令行界面执行一系列命令。这里我们分析并扩展几个基本的Shell脚本示例,以便深入理解其核心概念。 1. **Hello World** 脚本是最基础的示例...
作为命令语言,它交互式解释和执行用户输入...如果仅需返回一个 PHP shell脚本,我就使用 passthru()。通常,我在不同的场合中使用不同的函数,并且有时它们是可以互换的。 这完全取决于我的心情和要实现的目的
shell常用脚本:http、httpd、jdk1.7、jdk1.8、ip-location、kafka、lamp、nginx、nodejs、openssl、python、php、prce8、redis、rvm、tomcat、zabbix、nvm。。。。。。。。。。等等,不在逐一赘述,可以下载使用