很多站长朋友们都不太清楚php导出sql语句,今天小编就来给大家整理php导出sql语句,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php中的sql语句 2、 原生php如何输出mysql最后执行的sql 3、 php 如何输出DB类上所有SQL语句,页面上的所有 有关mysql 连接,语句 等信息 4、 zend framework1.8.4中如何输出SQL语句 - PHP框架开发 php中的sql语句1、很多时候我们在开发时需要将字符串与变量连接起来显示,在PHP中,字符串之间使用 “点” 来连接,也就是英文中的半角句号?" . " ,? " . " 是字符串连接符,可以把两个或两个以上的字符串链接成一个字符串。例如:
<?php
$name?=?"百度知道:";
$url?=??"zhidao.baidu";
echo?$name.$url."测试数据";
?>
输出结果为:
百度知道:zhidao.baidu测试数据
2、php在进行数据库查询时,如果对象是字符串,则需要使用引号将字符串区分开,这就是上面你的第一个问题,例如,你通过POST接受到的$username值是"zhanagsan",那么:
mysqli_query($conn,"SELECT?*?FROM?user?Where?username?=?'".$username."'");
php在进行解析时就是
mysqli_query($conn,"SELECT?*?FROM?user?Where?username?=?'zhangsan'");
如果你觉得这样会让你有点看不过来,还可以这样写:
mysqli_query($conn,"SELECT?*?FROM?user?Where?username?=?'{$username}'");
这里的{}也是起到连接的作用。
3、应用字符串连接符号有时候没有办法实现大量字符串的连接,PHP允许程序员在双引号中直接包含字符串变量,当echo语句后面使用的是 双引号 (" ")时,可以使用下面的格式来达到相同的效果(这是你的第二个问题)。例如:
<?php
$name?=?"百度知道:";
$url?=??"zhidao.baidu";
echo?"$name$url测试数据";?//?双引号里的变量同一般的字符串自动进行区分
?>
但是单引号(' ')就不可以了,这样如果不加连接符,解析后还是字符串,例如:
<?php
$name?=?"百度知道:";
$url?=??"zhidao.baidu";
echo?'$name$url测试数据';?//?单引号里的变量不会同一般的字符串自动进行区分
?>
最终的输出结果就变成了
$name$url测试数据???//最终只是输出变量名,是字符串
原生php如何输出mysql最后执行的sql方法一:
$link = mysql_connect("192.168.1.1", "myuser", "mypass");--连接数据库
if(FALSE == $link)
{
echo "Connect database failed!";
}
$query =
"select * from a order by id";
mysql_select_db('test', $link);--选择数据库
$result = mysql_query($query);--执行查询语句
if(FALSE == $result)
{
echo "Querry failed!";
}
$i = 0;
$j = 0;
while($i++ < mysql_num_rows($result))--取总行数
{
$meta_c=0;
if($meta_c=mysql_fetch_row($result))--取每一行的结果集
{
while($j < mysql_num_fields($result))--取一行的列数
{
echo $meta_c[$j;
}
echo "
";
} // while;
$j=0;
}
mysql_free_result($result);--释放结果集
mysql_close($link);--关闭连接
?>
方法二:
$link = mysql_connect("192.168.1.1", "myuser", "mypass");--连接数据库
if(FALSE == $link)
{
echo "Connect database failed!
";
}
mysql_select_db('test', $link);--选择数据库
$result = mysql_query("select * from a order by id");--执行查询语句
if(FALSE == $result)
{
echo "Querry failed!";
}
while($row = mysql_fetch_array($result, MYSQL_NUM))--取数组里面的值,因为结果集以二维数组存放
{
foreach ($row as $col_value)--一一取值
{
echo " $col_value ";
}
}
mysql_free_result($result);--释放结果集
mysql_close($link);)--关闭连接
?>
php 如何输出DB类上所有SQL语句,页面上的所有 有关mysql 连接,语句 等信息class DB_MYSQL
{
/*
* @_conf Array: [hostname],[username],[password],[dataname],[dbtype],[charset],[debug]
*/
var $_conf;
var $_dblink; //mysql connect
var $_dberr =0;
var $_sqlnum=0; //SQL query times
var $_sql='';
var $pageinfo =array();
var $pageSize =20; //=0: all; >0 page size
var $pageOrder=0;
var $stripSet =0;
function DB_MYSQL($db_config=''){
if(empty($db_config)){
global $db_conf;
$db_config=$db_conf[0];
}
$this->_conf=$db_config;
}
function conn()
{
$this->_dblink=@mysql_connect($this->_conf['hostname'],$this->_conf['username'], $this->_conf['password'])
OR $this->debug("mysql_connect error:".str_replace($this->_conf['username'].'@','',mysql_error($this->_dblink)));
if($this->_dblink)
{
if (isset($this->_conf['charset']) and strlen($this->_conf['charset'])>0)
{
@mysql_query("SET character_set_connection=".$this->_conf['charset'].", character_set_results=".$this->_conf['charset'].", character_set_client=binary", $this->_dblink);
}
$res=@mysql_select_db($this->_conf['dataname'],$this->_dblink)
OR $this->debug("mysql_select_db error:".mysql_error($this->_dblink));
if ($res) return true;
}
$this->_dberr=1;
return false;
}
function select_db($NewDB){
$this->_conf['dataname']=$NewDB;
if(empty($this->_dblink)){
return $this->conn();
}
$res=@mysql_select_db($this->_conf['dataname'])
OR $this->debug("mysql_select_db error:".mysql_error($this->_dblink));
if ($res) return true;
$this->_dberr=1;
return false;
}
/*
* @array query ($fetchType>0)
* @result query ($fetchType=0)
*/
function query($str,$fetchType=0,$file_rows='')
{
if (strlen($str)<1){
return false;
}
if(!$this->_dblink){
$this->conn();
}
else if (!mysql_ping($this->_dblink))
{
$this->close();
$this->conn();
}
$SQL=substr($str,0,18).'..';
if ($this->_conf['debug'] > 2)
{
$SQL=$str;
}
if(!empty($file_rows))
{
$SQL=$SQL.'<BR>'.$file_rows;
}
$this->_sql=$str;
$result=@mysql_query($str,$this->_dblink) OR $this->debug("mysql_query error:".mysql_error(),$SQL);
$this->_sqlnum=$this->_sqlnum+1;
if ($result)
{
if ($fetchType==1)
{
$arr=@mysql_fetch_array($result,1);
$this->check_query_quote($arr);
$this->free($result);
return $arr;
}
else if ($fetchType==2)
{
$arr = array();
while ($row = mysql_fetch_array($result,1))
{
$this->check_query_quote($row);
$arr[] = $row;
}
$this->free($result);
return $arr;
}
return $result;
}
else if ($fetchType>1) # NEW 2010-7-28
{
return array();
}
return false;
}//END sql
/*
* @array query_page
*/
function query_page($page,$Field,$Table,$Where='',$Order='',$Group='')
{
$page=intval($page);
$psize=abs($this->pageSize);
$this->_table=$Table;
if($psize<0 or $psize>300) $psize=20;
$sql="SELECT count(*) as allnum FROM $Table $Where";
if (strlen($Group)>0) {
$this->_sql="$sql $Group";
$result=$this->query("$sql $Group");
$rowsnum=$this->num_rows($result);
}
else{
$this->_sql=$sql;
$row=$this->query($sql,1);
$rowsnum=$row['allnum']+0;
}
if($rowsnum==0){
$page=0;
$this->pageinfo=Array('page'=>0,'pagenum'=>0,'rowsnum'=>0);
return array();
}
$pagenum=$psize<1 ? 1 : ceil($rowsnum/$psize);
$limit='';
if($psize==0){
$page=1;
$pagenum=1;
}
else
{
if($page > $pagenum or $page < 1) $page=1;
if($pagenum > 1){
$limit='limit '.(($page-1)*$psize).','.$psize;
}
}
$this->pageinfo['page'] =$page;
$this->pageinfo['pagenum'] =$pagenum;
$this->pageinfo['rowsnum'] =$rowsnum;
$sql ="SELECT $Field FROM $Table $Where $Group $Order $limit";
$this->_sql=$sql;
return $this->query($sql,2);
}
/*
* @array fetch_array
* @type: 1 MYSQL_ASSOC 2 MYSQL_NUM #3 MYSQL_BOTH
*/
function fetch_array($result,$type=1)
{
$arr=Array();
if (!$result) return $arr;
while ($row = @mysql_fetch_array($result,$type))
{
$this->check_query_quote($row);
return $row;
}
$this->free($result);
return false;
}
function fetch_subarr($result,$keyset='',$valset='')
{
$arr=Array();
if (!$result) return $arr;
if (empty($keyset))
{
return $arr;
}
while ($row = @mysql_fetch_array($result,1))
{
$this->check_query_quote($row);
if (!empty($keyset) and isset($row[$keyset]))
{
$tag=$row[$keyset];
$arr[$tag]=empty($valset) ? $row : $row[$valset];
}
}
$this->free($result);
return $arr;
}
function check_query_quote($val)
{
if($this->stripSet) $this->stripVar($val);
}
function stripVar($val)
{
if(is_array($val)){
foreach($val as $key => $v)
{
$this->stripVar($val[$key]);
}
}
else if(is_string($val)){
$val=StripSlashes($val);
}
}
function num_rows($result){
return @mysql_num_rows($result);
}
function affected_rows()
{
return @mysql_affected_rows($this->_dblink);
}
function data_seek($result,$row_num=0){
return @mysql_data_seek($result,$row_num);
}
function free($result){
return @mysql_free_result($result);
}
function last_id(){
$id=@mysql_insert_id($this->_dblink);
return intval($id);
}
function err_code()
{
return @mysql_errno($this->_dblink);
}
function err_msg()
{
return mysql_error($this->_dblink);
}
function close(){
$result = @mysql_close($this->_dblink);
$this->_dblink=0;
}
/* NEW 2010-8-15 */
function getsql($val,$type=0)
{
if($type==1) {
$g='';
if(substr($val,0,1)=='-') $g='-';
$val=preg_replace('/\D/','',$val);
if(strlen($val)==0) $val=0;
return $g.$val;
}
else if($type==2) return doubleval($val);
else if($type==3) return $val;
else{
if ($this->_dblink) return "'" . mysql_real_escape_string($val) . "'";
else return "'" . mysql_escape_string($val) . "'";
}
}
function getstr($val,$type=0) {
return $this->getsql($val,$type);
}
function debug($string,$SQL='')
{
$debug=$this->_conf['debug'];
if ($debug==4) {
die($string.'<HR>'.$SQL);
}
else if ($debug==3) {
print($string.'<HR>'.$SQL);
}
else if ($debug==2) {
print('<!--'.$string.'<HR>'.$SQL.'-->');
}
else if ($debug==1) {
//$code=intval($this->err_code());
return 0;
}
return 0;
}
}
zend framework1.8.4中如何输出SQL语句 - PHP框架开发$select
=
$db->select();echo
$sql
=
$select->__toString();不是知道是不是你要的的意思?kylingood
发表于
2009-7-3
13:24[i][/url][/b]我刚开始就是试这个
不行滴~~~
关于php导出sql语句的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php导出sql语句 php数据导出到excel的详细内容...