吴海燕都演过什么角色:php操作mysql的相关代码及foreach()循环

来源:百度文库 编辑:中财网 时间:2024/04/28 02:22:26

php中foreach()函数的用法  

foreach()有两种用 法:

1: foreach(array_name as $value)    {      statement;    }

    这里的array_name是你要遍历的数组名,每次循环中,array_name数组的当前元素的值被赋给$value,并且数组内部的下标向下移一步,也就是下次循环回得到下一个元素。

2:foreach(array_nameas $key => $value)   {       statement;      } 

    这里跟第一种方法的区别就是多了个$key,也就是除了把当前元素的值赋给$value外,当前元素的键值也会在每次循环中被赋给变量$key。键值可以 是下标值,也可以是字符串。比如book[0]=1中的“0”,book[id]="001"中的“id”.

示范用法的更多例子:

/*-------------------------------------------------------------------------*/
/* foreach example 1: value only */
echo "foreach example 1: value only ".'
';

$a = array(1, 2, 3, 17);

foreach ($a as $v) {
   echo "Current value of "$a: $v".'
';
}

/*-------------------------------------------------------------------------*/
/* foreach example 2: value (with key printed for illustration) */
echo '
'.'
'."foreach example 2: value (with keyprinted for illustration) ".'
';

$a = array(1, 2, 3, 17);

$i = 0; /* for illustrative purposes only */

foreach ($a as $v) {
    echo ""$a[$i] => $v".'
';
    $i++;
}

/*-------------------------------------------------------------------------*/
/* foreach example 3: key and value */
echo '
'.'
'."foreach example 3: key and value".'
';

$a = array(
    "one" => 1,
    "two" => 2,
    "three" => 3,
    "seventeen" => 17
);

foreach ($a as $k => $v) {
    echo ""$a[$k] => $v".'
';
}

/*-------------------------------------------------------------------------*/
/* foreach example 4: multi-dimensional arrays */
echo '
'.'
'."foreach example 4: multi-dimensionalarrays ".'
';

$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";

foreach ($a as $v1) {
    foreach ($v1 as $v2) {
        echo "$v2"n";
    }
}

/*-------------------------------------------------------------------------*/
/* foreach example 5: dynamic arrays */
echo '
'.'
'."foreach example 5: dynamic arrays".'
';

foreach (array(1, 2, 3, 4, 5) as $v) {
    echo "$v"n";
}
?>


结果如下:

foreach example 1: value only
Current value of $a: 1
Current value of $a: 2
Current value of $a: 3
Current value of $a: 17


foreach example 2: value (with key printed for illustration)
$a[0] => 1
$a[1] => 2
$a[2] => 3
$a[3] => 17


foreach example 3: key and value
$a[one] => 1
$a[two] => 2
$a[three] => 3
$a[seventeen] => 17


foreach example 4: multi-dimensional arrays
a b y z

foreach example 5: dynamic arrays
1 2 3 4 5

 

 

/* foreach example 3: key and value */
echo '
'.'
'."foreach example 3: key and value".'
';

$messageNav['首页'] =ROOT_PATH;

$messageNav['人才交流'] ="#"

$messageNav['动态专栏']="hragent/cn/"

$value):?>


>



print out result:首页>人才交流>动态专栏

 

下面是关于php操作mysql数据库的相关代码。也用到了foreach()循环

DB_config.php:

/**

 * 在phpmysq1.php的基础上,并将phpmysq1.php里面的相关代码进行封装。

 */

header( 'Content-Type:text/html;charset=utf-8'); //需要区分文件编码与文件内容编码

define( 'DB_HOST', 'localhost:3306' );

define( 'DB_USER', 'root' );

define( 'DB_PWD', '111' );

define( 'DB_NAME', 'school' );

 $conn= @mysql_connect ( DB_HOST, DB_USER, DB_PWD ) or die ( '数据库连接失:' .mysql_error () );

 mysql_select_db( DB_NAME, $conn ) or die ( '指定的数据库不存在:' . mysql_error () );

//设置字符集.如果环境全部是gbk,直接设置 set names gbk即可

mysql_query( 'set names utf8' ) or die ( '字符集错误:' .mysql_error () );

?>


Phpmysql2.php:

   /**

    * 进行用php操作mysql。增、删、改、查等操作

    */

   require 'DB_config.php';

      /*//新增数据

   $query = "insert into grade(name,email,point,regdate) values ('江奇2','jq2@sina.com.cn',98,NOW())";

   //执行

   @mysql_query($query) or die('新增数据出错:'.mysql_error());

  

  

   //修改数据

   $query2 = 'update grade set point=120 whereid=5';

   //执行

   @mysql_query($query2) or die('修改数据出错:'.mysql_error());

  

  

   //删除数据

   $query3 = 'delete from grade where id=9';

   //执行

   @mysql_query($query3) or die('修改数据出错:'.mysql_error());*/

  

   //显示数据.将表中的记录全部取出并显示

   $query4 = 'select * from grade';

  

   $result = mysql_query($query4) or die('SQL语句有误:'.mysql_error());

  

   //将结果集转换成数组赋给$row变量,如果有数据,就为真.

   //$row = mysql_fetch_array($result)可以将它改成!!$row =mysql_fetch_array($result).成布尔值,就不会有感叹号提示

   //while($row = mysql_fetch_array($result)){

  

   while (NULL!=($row = mysql_fetch_array($result))){

      //每执行mysql_fetch_array($result)一次,就取出表中的下一条记录

      echo $row['id'].'--'.$row['name'].'--'.$row['email'];

      //echo $row[0].'--'.$row[1].'--'.$row[2];

      echo '
';

   }

  

   //下面的方式也可以实现.要用foreach循环,必须用到mysql_fetch_row()函数作判断

   /*while(NULL!=($row = mysql_fetch_row($result))){

      foreach ( $row as $arrays){

        //print_r($arrays).'--' ;

         echo $arrays;

           }

         echo '
';  

      //echo $row[0].'--'.$row[1].'--'.$row[2];

      //echo $row[0].'--'.$row[1].'--'.$row[2];

    

   }*/

  

   //关闭数据库连接资源

   mysql_close($conn);

 

?>