<?php
/** 10 数组 compact extract in_array
*/ //compact() (紧凑的,简洁的) 将变量转换为数组,变量名为数组键名,变量值为数组的键值。
/*$webname = "博客";
$weburl = "bbs.blog.com";
$webcms = "cms.blog.com";
$lantian=array('webname', 'weburl', 'webcms');
$webs = compact($lantian);//Array ( [webname] => 博客 [weburl] => bbs.blog.com [webcms] => cms.blog.com )
print_r($webs);*/ //extract() (提取,选取) 将数组转化为变量,键名作为变量名,键值作为变量值
/*$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com\"", 'webcms'=>"cms.blog.com");
$strs=extract($lantian);
var_dump($strs);//输出:4
echo $webname;//输出:博客*/ /*$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com");
$strs=extract($lantian,EXTR_PREFIX_ALL,"lantian");//第二个参数是使得生成的变量都有前缀。第三个是前缀。
var_dump($strs);//输出:4
echo $lantian_weburl;//输出:bbs.blog.com*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com");
$strs=extract($lantian);//默认情况下,新生成的变量会覆盖之前的变量
echo $webname;//输出:博客*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com");
$strs=extract($lantian,EXTR_SKIP);//第二个参数的作用,如果之前有定义的变量,就不在生成新的变量了。
echo $webname;//输出:我的博客*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com");
$strs=extract($lantian,EXTR_IF_EXISTS);//第二个参数的作用。生成数组之前定义的一个变量。
echo $webname;//输出:博客*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com");
$strs=extract($lantian,EXTR_PREFIX_IF_EXISTS,'lan');//第二个参数的作用。假如有定义的变量,再去生成变量,新的加上前缀。两个都存在。之前没定义过的,就不生成了。
echo $webname;//输出:我的博客
echo $lan_webname;//输出:博客*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com",'蓝天');
$strs=extract($lantian,EXTR_PREFIX_INVALID,'lan');//第二个参数:当数组有数字索引时,自动加上前缀,其他的不加
echo $webname;//输出:博客
echo $lan_0;//输出:蓝天*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com",'蓝天');
$strs=extract($lantian,EXTR_PREFIX_SAME,'lan');//第二个参数:当生成的变量与之前定义的冲突时,后面生成的变量加上前缀。
echo $webname;//输出:我的博客
echo $lan_webname;//输出:博客
echo $weburl;//输出:bbs.blog.com*/ /*$webname="我的博客";
$lantian=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com",'蓝天');
$strs=extract($lantian,EXTR_REFS);//第二个参数:使得生成的变量具有引用赋值
echo $webcms;//输出:cms.blog.com
$lantian['webcms']="蓝天CMS,欢迎你的加入";
echo $webcms;//输出:蓝天CMS,欢迎你的加入*/ //in_array() 判断元素是否在数组中,如果加参数TRUE。同事进行数组类型的判断
/*$lan_config=array('webname'=>'博客', 'weburl'=>"bbs.blog.com", 'webcms'=>"cms.blog.com",'蓝天');
$bool=in_array('博客',$lan_config);
var_dump($bool);//输出:true*/

  

010——数组(十)compact extract in_array的更多相关文章

  1. 2016/3/20 数组定义 数组遍历 超全局数组 数组元素设置(in_array() 、array_reverse()、count()、array_unique()、unset()、array_values、array_merge、array_push) 列表实例

    一.数组定义 php数组与其他语言的数组的不同: 其他例如java语言 :同一种类型数据的集合. php:数组可以存储任何类型的数据.同一个数组中可以放int类型也可以放string类型 ①索引数组的 ...

  2. 【原】Java学习笔记010 - 数组

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 需求:一堆分数,要 ...

  3. ☠全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👾#010 #第十单元 Scanner类、Random类 #

    一.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.API的使用2.Scanner类的使用步骤3.Random类的使用 (Ⅱ)能力目标 1.掌握API的使用步骤2.使用 ...

  4. in_array 查询数组中是否存在某个值

    (PHP 4, PHP 5) in_array — 检查数组中是否存在某个值 说明 bool in_array ( mixed $needle , array $haystack [, bool $s ...

  5. PHP之数组函数

    php数组中的预定义变量 预定义常量 CASE_LOWER (integer) CASE_LOWER 用在array_change_key_case()中将数组的键名转换为小写字母.这也是array_ ...

  6. PHP常见数组方法和函数

    current();当前游标指向的数组单元值 next();下一个数组单元值 end()最后一个 reset()复位 prev()把数组指针往前一位 写法:$arr=array('a','b','c' ...

  7. PHP 笔记——Array 数组

    要点 说明 数组构成 数组是由一个或多个数组元素组成的 数组元素 每个数组元素由键(Key)和值(Value)构成 键 元素的识别名称,也被称为数组下标 值 元素的内容 映射 键 和 值 之间存在一种 ...

  8. php -- php数组相关函数

    array range ( mixed $low , mixed $high [, number $step ] ) 创建一个连续的数组 range('a','z'); foreach (range( ...

  9. php常用字符串数组函数

    Php常用的数组函数 键值操作 Array_values($arr) 获取数据的值 Array_keys($arr) 获取数组的key Array_flip($arr) 数组键值反转 In_array ...

随机推荐

  1. maven install jdk版本自动降为1.7

    开发过程中遇到了一个奇怪的现象. IDEA中所有的设置都改成了1.8,但是在执行maven install时却自动降为1.7,报错提示: [ERROR] Failed to execute goal ...

  2. leveldb0

    leveldb的源代码进行学习,则纯粹是出于一个码农对美好世界进行探究的好奇.接下来将尽可能从源代码上给出leveldb代码的详尽注释,这里先列出自己在阅读前后的主要参考. 0 官方文档http:// ...

  3. Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths

    一:Poi读取Excle报错  java.util.zip.ZipException: invalid stored block lengths 系统中需要导出excle签收单,excle模板是预设好 ...

  4. 计算mysql 数据库 表大小 服务器传输 小写表明转成大写

    //数据库表存储大小 select table_schema,table_name,table_rows,concat(round(data_length/1024/1024/1024,2),'GB' ...

  5. JAVA学习笔记之图解JAVA参数传递

    今天做项目,发现了一个问题,当String作为参数传递的时候,在函数内部改变值对外部的变量值无影响,如下代码: public static void main(String[] args) { Str ...

  6. 20145329 《Java程序设计》实验一总结

    实验指导教师:娄嘉鹏老师 实验日期:2016.4.8 实验时间:16:30~18:30 实验序号:实验一 实验名称:Java开发环境的熟悉 实验目的与要求: 使用JDK编译.运行简单的Java程序. ...

  7. 打开Mac OSX原生的NTFS功能

    插上磁盘 从finder或者使用以下命令查看到磁盘的Volume Name: diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID ...

  8. C++ 读取文件所有内容的方法

    方法一 #include <fstream> #include <string> #include <iostream> using namespace std; ...

  9. 从0开始 图论学习 邻接表 STL vector

    邻接表表示 用vector实现 writer:pprp 代码如下: #include <bits/stdc++.h> using namespace std; const int maxn ...

  10. POJ 1236 Network of School

    http://poj.org/problem?id=1236 题意: 给出一个图,至少要选多少个点才能遍历全图和至少需要添加多少边使得整个图是强连通. 思路: 强连通计算连通分量后缩点,计算入度为0的 ...