php打印对象
① php对象问题,上代码,为什么下面变量打印出来时object 对象,但是is_object()判断的时候却进不去呢
的GetType()被用于获取变量的类型。字符串类型返回,可能是以下字符串之一:整型,双,字符串,数组,对象,未知类型
is_numeric(混合变量):/ /测试变量是不是衡量一个数字或数字字符串
is_bool():/ /测试测量是一个布尔变量没有
is_float():测量/ /测试变量是不是一个浮点型和is_double,is_real()有相同的用法 BR /> is_int():/ /测试测量变量不是整个儿is_integer()的用法相同
IS_STRING():/ /测试测量变量不是字符串
IS_OBJECT():/ /测试测量变量不是一个对象
IS_ARRAY():测量/ /测试变量是不是
is_null一个数组():/ /测试该变量的确定是不是一茬茬的值是不大小写敏感
② 在php中print_r能打印对象吗
可以打印对象,不过只能打印对象的属性,它的方法不能打印出来
补充一下,要想获取对象的方法列表,可以用get_class_methods函数
③ php怎么输出对象里的一个值
要将字符串中特定子字符串输出,需要用到正则匹配。
按照你的要求,匹配规则如下:
正则表达式:/<.*?>/g
2. 匹配message:Queued. Thank you.
正则表达式:/> Q.*./g
两者匹配结果如下图:
图2
匹配的结果,然后用 php的 substr函数截取出来目标字符串就行了,正则匹配用 preg_match函数
④ php问题,为什么打印php对象会把里面的属性打印出来,我的构造方法是共有的!
你用什么打印输出,php打印输出有 var_mp、print、echo等
var_mp() 能打印出类型
print_r() 只能打出值
echo() 是正常输出,不能显示数组
需要精确调试的时候用 var_mp();一般查看的时候用 print_r();
⑤ php如何打印对象的所有属性
使用var_mp()打印
⑥ php关于输出对象的方法的问题
看一下,这个是不是你要的东西。
<?php
class myclass {
// constructor
var $t1='tt1'
public $t2='tt2'
protected $t3;
private $t4;
function myclass()
{
return(true);
}
// method 1
function myfunc1()
{
return(true);
}
// method 2
function myfunc2()
{
return(true);
}
}
$methods = get_class_methods('myclass');
print_r($methods);
$vars = get_class_vars('myclass');
print_r($vars);
?>
输出结果:
Array ( [0] => myclass [1] => myfunc1 [2] => myfunc2 ) Array ( [t1] => tt1 [t2] => tt2 )
⑦ PHP echo可以输出对象吗
可以,如下面:
<?php
$dsn = 'mysql:dbname=oop;host=localhost;';
$user = 'admin';
$password = 'password';
try {
$pdo = new PDO($dsn, $user, $password);
}
catch (PDOException $e)
{
echo 'Connection failed: ' . $e->getMessage();
}
$result = $pdo->query("select * from be_users");
var_mp($result);
?>
输出:
object(PDOStatement)[2]public'queryString'=>string'select * from be_users'(length=22)
问题:
输出结果中[2]表示什么意思?
说明对象有2个变量,包括public也包括private和protected
下面是我随便拿了个class,输出的结果。
object(myclass)#1 (4) {
["t1"]=>
string(3) "tt1"
["t2"]=>
string(3) "tt2"
["t3:protected"]=>
NULL
["t4:private"]=>
NULL
}
下面是测试代码。
<?php
$a = new myclass();
var_mp($a);
class myclass {
// constructor
var $t1='tt1';
public $t2='tt2';
protected $t3;
private $t4;
function myclass()
{
return(true);
}
// method 1
function myfunc1()
{
return(true);
}
// method 2
function myfunc2()
{
return(true);
}
}
?>
⑧ Thinkphp3.2 有什么方法打印对象
print_r( $this );var_mp( $this );虽然TP是个框架,但这不会改变它是PHP的事实,所以PHP原生的打印方法都是可以用的
⑨ php中最基本的语法格式有些不懂
为了避免误人子弟,我反复查阅资料,给出以下回答。
echo 实际上不是一个函数,它是一个命令,所以是不需要括号的,但是PHP支持加上括号的写法。
参考:http://cn.php.net/manual/zh/function.echo.php
print 与 echo 是一样的,毫无差别。PHP官方的解释是,echo 比 print 快一点点。
参考:http://cn.php.net/manual/zh/function.print.php
print_r 是格式化输出,它可以打印数组和对象。你用print打印一个数组将始终输出array,而使用print_r将能输出整个数组的结构。
参考:http://cn.php.net/manual/zh/function.printf.php
\n是换行符的意思,输出后文本将被换行。还有 \r (回车符)、 \t (制表符)等这些不可视的字符。
你问的第三点好像写错了,应该是
$arr=array(10,1,5,2=>8,5=>15,18);
=> 运算符指示数组的元素值(参考:http://apps.hi..com/share/detail/19910637)
2=>8 的意思就是第二号元素的值为8,数组中原来第二号元素的值将被取代。
最终print_r($arr)的时候
Array
(
[0] => 10
[1] => 1
[2] => 8
[5] => 15
[6] => 18
)
下标为 2 的元素值 5 被 8 取代,4 下标被 5=>15 强制跳过。
⑩ php输出对象里面的一个值
用echo,比如
for ($M=0;$M<10;$M++) {
echo "$M
";
}