print($arr,true)的参数true表示将$arr的值返会,而不是打印

之前通过error_log()来调试php,

发现收到的json字符前边总是有一个1,一直以为是哪里直接出现了print、print_r、echo、var_dump(),

后来发现原来是某处用了形如error_log(print_r($str))的代码,这样会直接打印$str的值,顾收到的json前总是有一个1,

正确做法应该是error_log(print_r($str,true))

注意:

?





1

2

3

4

5

6

7

8

9

10

11

12

13

//这种情况,浏览器会显示Array ( [0] => c [1] => d ),而php错误日志会显示1

$arr = array("c","d");

error_log(print_r($arr));

//这种情况,浏览器无任何显示,而php错误日志会显示

//Array

//(

//  [0] => c

//  [1] => d

//)

$arr = array("c","d");

error_log(print_r($arr,true));

  

即print_r()中的第二个参数为true是,表示把字符返回而不是打印在屏幕上

时间: 2024-10-03 00:21:38

print($arr,true)的参数true表示将$arr的值返会,而不是打印的相关文章

C++ 里大写TRUE和小写true区别

1.C++里大写TRUE和小写true区别 true是bool型的: TRUE是int型的,VC里这个是ms自己定义的: C++规定不允许只通过返回类型不同区别两个函数 2.MFC中的”false“和 “FALSE"有没区别? 有区别.false是bool类型的值,一个字节大小.而FALSE是BOOL类型的值,BOOL就是typedef int BOOL,四个字节大小.虽然FALSE和false值都是1,但一个是四字节的,一个是一字节的. 3.而”DWORD"和“HWND"分

Django在admin模块中显示auto_now_add=True或auto_now=True的时间类型列

在Django如果model中的列定义了auto_now_add或auto_now属性,那么这种列不会在admin的页面中显示,比如: class Blog(models.Model): ... create_time = models.DateTimeField(auto_now_add=True) update_time = models.DateTimeField(auto_now=True) 其中的create_time和update_time均不会显示在admin页面中. 查看Djan

【转】SystemParametersInfo API学习(128个中文参数解释,215个实际值)

uiAction:该参数指定要查询或设置的系统级参数.其取值如下: SPI_GETACCESSTIMEOUT:检索与可访问特性相关联的超时段的信息,PvParam参数必须指向某个ACCESSTIMEOUT结构以获得信息,并将该结构中的cbSjze成员和ulParam参数的值设为sizeof(ACCESSTIMEOUT). SPI_GETACTIVEWINDOWTRACKING:用于Windows 98和Windows NT 5.0及以后的版本.它表示是否打开活动窗口跟踪(激活该窗口时鼠标置为开状

38 py改变函数参数的值关键字参数和参数默认值函数中可变参数将序列中的元素值作为函数对应的参数值传

第五课:改变函数参数的值 一个python函数可以有任意多个参数,在一个函数的外部来定义变量,然后把变量作为参数传入到函数内,并且在函数的内部来修改函数的参数值,函数结束之后,这些变量的值在如何变化呢? 给函数传递值有2种:1种是值传递,1种是引用传递 # 改变函数参数的值 # 值传递(数值.字符串.布尔 这些都是值传递) 在函数的内部修改变量值,不改变原参数定义的参数值,解释为: 这个在函数中不会改变原来定义(函数外部)的值 这是因为函数里面会有一个占的概念,外边的变量的值会复制给 占 里面,

为什么赋值操作符函数的参数为const引用,返回值为引用

为什么赋值操作符函数的参数为const引用,返回值为引用 1.返回值类型 返回类型一般声明为类型的引用,并在函数结尾时返回实例自身的引用(即*this).这里主要有两个原因:(1)返回引用可以减少一次拷贝构造和析构函数导致不必要的开销,因为返回值类型不是引用,会创建一个匿名对象,这个匿名对象时个右值,获取return的值.(2)可以实现连续赋值 在例子中 b=c=a; 返回值不是引用类型也是可以的,其运算顺序 b=(c=a); c得到一个右值,再将右值赋给b,所以逻辑上没有问题的.但是如果是 (

两个对象值相同 (tmp1.equals(tmp2) == true) 但却可有不同的 HashCode 值,这句话有问题吗?

答: 有问题,这句话是不对的.两个对象 tmp1 和 tmp2 满足 tmp1.equals(tmp2) == true 时它们的 HashCode 应当相同,因为 Java 对于 eqauls 方法和 hashCode 方法的规定是如果两个对象 equals 方法相等则它们的 hashCode 值一定要相同,如果两个对象的 hashCode 相同则它们的 equals 方法并不一定相同:实际中我们也可以不按照要求的原则去做,但是如果违背了上述原则就会发现在使用容器时相同的对象可以出现在 Set

传参数应该用哪种形式——值、引用、指针?

类型:C++ & Qt4,创建时间:十二月 30, 2011, 7:43 p.m. 标题无"转载"即原创文章,版权所有.转载请注明来源:http://hgoldfish.com/blogs/article/19/. 最近写C++程序经常郁闷传参数的时候应该传值.传引用还是传指针. 传值 :int func(User u); 传指针: int func(User* u); 传引用: int func(User& u); 传值是传参数最常见的方法,相当简单,是C++的基础传

1.数组arr[]遍历输出和数组中求最大的值。

1 public class gkhkhh { 2 3 public static void main(String[] args) { 4 // TODO Auto-generated method stub 5 6 7 int arr []=new int[]{ 12,34,22,11,8,9,4}; 8 9 for (int a=0;a<7;a++) 10 { 11 System.out.print(arr[a]+"\t"); 12 } 13 14 15 16 int ar

解决OneThink中模型中字段参数为函数时无返回值的问题

创建模型 针对OT,创建一个模板,就插入**_model表一条记录,当此时,并并不创建模型的附表. 模型中创建字段 func_type字段如下 指定字段的参数为函数,函数get_func_type定义如下 /** *获取函数类型 * @param intger $type 类型 * @param array $all 函数类型 * @author dqs <[email protected]> */ function get_func_type(){ $map=array('status'=&