很多站长朋友们都不太清楚php数组里的对象,今天小编就来给大家整理php数组里的对象,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php中显示数组与对象的实现代码 2、 php数组对象元素排序问题 3、 php中怎么把对象从数组中取出来 4、 php 判断数组里面有没有对象 5、 php中数组能储存对象吗 php中显示数组与对象的实现代码1、
使用
print_r
(
$array/$var
)
是打印的意思,而r则取自Array的单词,那么该函数的功能就是打印数组内容,它既可以打印数组内容,也可以打印普通的变量。
print_r
($_REQUEST)
;
print_r
($_GET)
;
/*
打印使用GET方法传递的表单内容*/
print_r($_POST)
;
/*
打印使用表单POST方法传递过的数组内容*/
2、
使用
var_dump
($object/$array/$var)
var
代表变量(Variable),变量包括对象、数组以及标量变量,dump有倒出之意,加在一块,就是将变量或对象的内容全部输出出来。
var_dump($DB)
;
/*打印$DB数据库连接对象的内容*/
var_dump($fileHandle)
;
/*打印文件句柄对象的内容*/
var_dump($Smarty)
;
/*打印Smarty模板对象*/
3、
使用
var_export($object/$array/$var)
输出或返回一个变量的字符表示。此函数返回关于传递给函数的变量的结构信息,它和print_r()类似,不同的是其返回的表示是合法的PHP代码。可以通过将函数的第二个参数设置为TRUE,从而返回变量的表示。
例如:
复制代码
代码如下:
<?php
$a
=
array
(
1,2,
array("a","b","c"))
;
var_export
($a)
;
echo
"<br>"
;
$v
=
var_export
(
$a
,
TRUE)
;
echo
$v
;
?>
上例中,$v
=
var_export
(
$a
,
TRUE)
表示返回的是PHP的源代码,可以直接用PHP脚本的数组文件中。
相关说明:
以上三个函数都可以打印对象的值、系统函数值以及数组的内容;
△
echo
、print、printf可以打印变量内容,但不能显示数组及系统超级变量数组;
△
print_r
和
var_dump不仅可以打印数组、标量变量,还可以打印对象的内容;
△
var_dump语句不仅能打印变量、数组内容,还可以显示布尔变量和资源(Resource)的内容;
△
var_export
函数返回关于传递给该函数的变量的结构信息,和
var_dump()函数类似,不同的是其返回的内容是合法的PHP代码。
php数组对象元素排序问题$fruits =array( 0 => array( 'id' => 1, 'type' => '普通发票', 'weight' => 1, 'is_start' => 1), 1 => array( 'id' => 2, 'type' => '增值税专用发票', 'weight' => 2, 'is_start' => 1), 2 => array( 'id' => 3, 'type' => '收据', 'weight' => 0, 'is_start' => 1), 3 => array( 'id' => 4, 'type' => '测试', 'weight' => 4, 'is_start' => 0) ); var_dump($fruits); function compare($x,$y) { if($x['weight'] == $y['weight']) return 0; elseif($x['weight'] < $y['weight']) return -1; else return 1; } usort($fruits,"compare"); echo $fruits[0]['id']."<br />"; echo $fruits[1]['id']."<br />"; echo $fruits[2]['id']."<br />"; echo $fruits[3]['id']."<br />";
php中怎么把对象从数组中取出来数组操作,查询指定的值或者key,一般使用array_search和in_array;
如果已经有key了,可以直接$array[$key];
php对数组操作函数(这个里面很多都比较常用,最好掌握):
参考:
php 判断数组里面有没有对象可以用foreach遍历数组,每次用is_object函数判断数组元素是不是对象。像这样:
class A
{
private $a = 5;
}
$a = new A();
$array = array("a"=>1,"b"=>2,"c"=>$a);
function has_object($arr)
{
foreach($arr as $value)
{
if(is_object($value))
{
return true;
}
}
return false;
}
print_r(has_object($array));
php中数组能储存对象吗可以的 举个简单的例子给你
<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$arry1=array(1,$bar);//这里将实例化的对象存入数组
var_dump($arry1);//这里打印数组结构 你会发现下标1的位置存储了一个object对象
$arry1[1]->do_foo();;//以数组形式 调用do_foo();
$bar->do_foo();//正常的调用do_foo()
//两种方式输出是一样的 充分说明 数组是可以存储对象的 希望对你的学习有帮助
?>
//下面是输出 我自动换行分割了下 其实是一行
array(2) { [0]=> int(1) [1]=> object(foo)#1 (0) { } }
Doing foo.
Doing foo.
关于php数组里的对象的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php数组里的对象 php中数组的详细内容...