"bar", 12 => true); //key可以是integer或string,value可以是任何类型print_r($arr1);//对象Object:由一组属性值和一组方法构成。class Person //class前面是不能加public的,这和.NET可不同。作用域可能和导入到其他文件中有关。暂时只能满脑子???{ public $name; //Public,Protected,Private可见性是一样的 function Say() { echo "Doing foo."; }}$person1 = new Person(); //也是用new生成类的实例对象$person1->name = "Tom";$person1->Say();echo gettype($person1->name);//资源类型Resource:外部资源的引用,通过专门的函数来建立和使用。打开文件、数据库连接、图形画布区域等的句柄.//据说忘记释放资源,系统自动启动垃圾回收机制$file_handle = fopen("ttt.txt", "r");var_dump($file_handle); //创建成功返回资源引用,创建失败返回boolean(false)if(!$file_handle){ echo 'Failed to open file';}//NULL类型:NULL值。下列情况被认为是NULL:直接赋值了NULL, 声明变量尚未赋值, 被unset()销毁的变量//数据类型转换:自动转换、强制转换//自动转换:通常只有4种标量类型混合运算才会自动转换。按长度增加的方向。/* * True变1,False变0 * integer先转为float * 字符串先转换为数字:字符串[最前面是]数值部分不带小数点-integer,否则-float. 不是数值开头的-0 *///强制类型转换:除了(int)形式外,可用转换函数:intval()、floatval()、strval()等不会改变原变量类型,只获取新值echo (int)'a123'; //0echo (int)'123'; //123//settype($var, 'integer'); //改变了变量的类型//浮点 转换 为整型,舍弃小数部分,超出整型范围,结果将不确定。NULL转换为字符串为“”。//变量类型的测试函数:/* * is_bool,is_int,is_float,is_string..... *///常量:作用域是全局的。只能是标量(boolean,integer,float,string)类型。定义后不能重新定义或取消定义。//常量的定义和使用:define()函数,命名与变量一致,区分大小写,惯例是全部大写。不要$符号。defined()检查是否定义了。//boolean define(string name, mixed value[,bool case_insensitive]); mixed-代表多种类型都可。define("PI", 3.1415926);//预定义常量:echo PHP_OS;echo PHP_VERSION; echo DIRECTORY_SEPARATOR; //\echo PATH_SEPARATOR; //;echo E_ERROR; //1echo E_WARNING; //2echo E_PARSE; //4echo E_NOTICE; //8echo M_PI; //3.14159...//魔术常量:echo __FILE__;echo __LINE__;echo __FUNCTION__;echo __CLASS__;echo __METHOD__;