当前位置:  编程技术>php
本页文章导读:
    ▪PHP中获取变量的变量名的一段代码的bug分析       代码如下: /** * 获取变量名 * * @param $string * @return $string * * $test = "helo"; * $test2 = "helo"; * getVarName($test2); */ function getVarName(&$src){ //存储当前变量值 $save = $src; //存储所有变量值 $allvar = $GLOBALS.........
    ▪PHP的一个基础知识 表单提交       register.php: 代码如下: <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=gb2312"> <title>注册页面</title> </head> <body> <form action="/blog_article/request.html" method="post" name="reg.........
    ▪php与mysql建立连接并执行SQL语句的代码       今天写了一个小程序,很小很小,只不过是能够建立php与mysql的链接,并且实现简单的SQL语句。 新手初试,还请各路高手多多指导。 程序源代码如下: 代码如下: <?php $conn = mysql_connect("lo.........

[1]PHP中获取变量的变量名的一段代码的bug分析
    来源: 互联网  发布时间: 2013-11-30
代码如下:

/**
* 获取变量名
*
* @param $string
* @return $string
*
* $test = "helo";
* $test2 = "helo";
* getVarName($test2);
*/
function getVarName(&$src){
//存储当前变量值
$save = $src;
//存储所有变量值
$allvar = $GLOBALS;
//在函数中不要直拉遍历$GLOBALS,会出现堆栈问题
foreach($allvar as $k=>$v){
//变量值相同,可能不是相同变量,因多个变量的值可能相同
if ($src == $v){
//改变当前变量$src的值
$src = 'change';
//如果$GLOBALS[$k]也跟着改变,那就是同一个变量。
if ($src == $GLOBALS[$k]){
//echo "\$$k name is $k
";
//还原变量值
$src = $save;
return $k;
}
}
}
}

copy下来后发现这个怎么测试结果有时候对有时候不对,想了很久,终于弄明白,虽然很简单,但是自己还是记录下,希望遇到同样情况的同学注意。
比如:现在我测试
代码如下:

$test2 = "hello";
$countNum=0;
echo getVarName($test2);
//按道理应该输出为”test2“,但是输出的是"countNum",

因为函数中的
if ($src == $v) 这里存在问题 比如$src="/blog_article/hello/index.html", $GLOBALS里面有个变量$countNUm=0;
这时在循环的时候判断 if ($src == $v) ,即"hello"==0,比较的结果为true,类型转换的时候“hello“转为整形为0,
然后就退出循环了,得到错误的结果。
一个解决办法就是 if ($src == $v) 改为 if($src=/blog_article/==$v/index.html),即恒等。
如果我理解错了欢迎您指正,一起进步。

    
[2]PHP的一个基础知识 表单提交
    来源: 互联网  发布时间: 2013-11-30
register.php:
代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>注册页面</title>
</head>
<body>
<form action="/blog_article/request.html" method="post" name="registForm">
<table width="330" border="0" align="center" cellpadding="5" bgcolor="#eeeeee">
<tr>
<td width="40%">用户名:</td>
<td><input name="username" type="text" id="username"/></td>
</tr>
<tr>
<td>姓名:</td>
<td><input name="name" type="text" id="name"/></td>
</tr>
<tr>
<td>密码:</td>
<td><input name="pwd" type="text" id="pwd"/></td>
</tr>
<tr>
<td>邮箱:</td>
<td><input name="email" type="text" id="email"/></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="提交" name="submit"/>
<input type="reset" value="重置" name="button"/>
</td>
</tr>
</table>
</form>
</body>
</html>

request.php
代码如下:

<?php
$username = $_POST['username'];
$name = $_POST['name'];
$pwd = $_POST['pwd'];
$email = $_POST['email'];
//print_r($username);
if(!empty($username))
{
echo "您填写的信息为:<br>\n";
echo "用户名: $username <br>\n";
echo "姓名: $name <br>\n";
echo "密码: $pwd <br>\n";
echo "邮箱: $email <br>\n";
}
print_r($_POST)
//echo "aaaa";
?>
</PRE>
</DIV>

当然,你也可以把request跟regiser.php写到一起。

    
[3]php与mysql建立连接并执行SQL语句的代码
    来源: 互联网  发布时间: 2013-11-30
今天写了一个小程序,很小很小,只不过是能够建立php与mysql的链接,并且实现简单的SQL语句。

新手初试,还请各路高手多多指导。

程序源代码如下:
代码如下:

<?php
$conn = mysql_connect("localhost","root","") or die ("wrong!");
$sel=mysql_select_db("mydb",$conn);
$sql="INSERT INTO `mydb`.`test` (
`id` ,
`uid` ,
`regdate` ,
`remark`
)
VALUES (
'', 'php200', now( ) , 'dddd'
) ";
$que=mysql_query($sql,$conn);
if($que)
echo"true";
else
echo "wrong";
?>

    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3