欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

PHP视频教程_数组函数 compact 它是extract的逆函数 相反函数 有大用

shiping1 的头像
 数组函数实在是太多了,学习起来也比较绕,很难把其深刻的掌握啊,不过只要多加练习,第一映像应该还是有的,所以还是多练习才能理解和熟练的应用这些函数。

    在实际的代码编写中,我们有时需要把变量转化为数组,那么在PHP系统里就为我们提供了这样的函数,这节就讲到把变量转化为数组的函数:

    1、 compact(参数1,参数2,参数…) 将一个或多个变量转化为数组,变量名为数组的键名,变量值为数组的键值,可以接收传入两种不同的参数:1.直接传入变量名的方式;2.传入以变量名为数组的传入方式,此方式就像我们经常看到的把要定义的变量存放在一个配置文件里,然后通过数组将其传入。

    实例分析:

    第一种传入的变量方式实例:

    function fun($arr){
    echo'<pre>';
    print_r($arr);
    }  //自定义一个格式化函数来输出新生成的数组。

   $blogname='php学习日志';
   $blogurl='www.www.www';
   $class='php视频教程';
   $news_arr=compact('blogname','blogurl','class');
   fun ($news_arr);

    输出结果:

Array ( [blogname] => php学习日志 [blogurl] => www.www.www [class] => php视频教程 )

    从输出的结果看到,我们所定义的三个变量( $blogname  $blogurl  $class)经过compact函数处理后,以变量作为数组的键名变量值作为数组的键值形式生成一数组,compact函数里的变量参数名要和定义的变量相同,否则无法生成数组

    第二种传入数组方式实例:

    function fun($arr){
    echo'<pre>';
    print_r($arr);
    }

   $blogname='php学习日志';
   $blogurl='www.www.www';
   $class='php视频教程';
   $arr1=array('blogname','blogurl','class'); //定义一个数组。
   $arr2=compact($arr1);
   fun($arr2);

    输出结果:

Array ( [blogname] => php学习日志 [blogurl] => www.www.www [class] => php视频教程 )

    从输出的结果可以看到,不论是以数组方式传入变量,还是直接传入变量,在例子中得到的结果是一样的。而第二种传入方式是我们经常用到的写在一个配置文件里的变量,然后include等其它方式传入进来等等,的一些使用场合

    这就是compact()函数的使用过程,基本上也比较简单,使用起来也方便,很好记忆。。

    接下来再看compact()函数的反函数,既然compact()函数能把变量生成数组,那么也会有把数组转化成变量的函数,那么这个能把数组转化成变量的函数就是extract()函数,extract()函数有多个系统的参数,这些系统的参数都有其用途,接下来看其使用说明与实例。

来自 http://blog.sina.com.cn/s/blog_8a66129101017apw.html

普通分类: