- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
此 var_dump
结果中的数字 #11 和 (0) 是什么意思:
object(PDO)#11 (0) { }
我有一个类,我从它创建了一个对象并在多个地方使用它。
最佳答案
我也不知道,一起来了解一下,by looking at the source-code for var_dump
! (寻找 PHP_FUNCTION(var_dump)
)。
(对于 TL;DR,跳到最后)
PHP 函数 var_dump
是 C 函数 php_var_dump
的包装器。
php_var_dump
有一个 switch()
语句来为每个 PHP 的基本类型(数字、字符串、 bool 值、对象等)生成不同的输出,并且我们对 object
类型感兴趣。
在 案例 IS_OBJECT:
案例中,我们看到了这一点:
php_printf("%sobject(%s)#%d (%d) {\n", COMMON, ZSTR_VAL(class_name), Z_OBJ_HANDLE_P(struc), myht ? zend_array_count(myht) : 0);
输出中的 #10
来自格式字符串的 #%d
部分,这是第 3 个 C 可变参数,而 (0)
是第 4 个 C 可变参数。
Z_OBJ_HANDLE_P(struc)
myht? zend_array_count(myht) : 0
Z_OBJ_HANDLE_P
基本上返回一个对象在 PHP 中的唯一标识符(所以你的 PDO 实例是第 11 个对象 (我想,见下文) 在处理此请求)。
myht
的事情更复杂:但如果设置了它,则意味着您要求 PHP var_dump
一个 object
成员属性 (而不是对象本身),例如var_dump( $foo->bar )
而不是 var_dump( $foo )
。如果您不引用对象属性,那么它只会打印 0
。
->handle
值的确定方式及其含义:Z_OBJ_HANDLE_P
宏是 Z_OBJ_HANDLE(*(zval_p))
Z_OBJ_HANDLE
宏是(Z_OBJ((zval)))->handle
Z_OBJ
宏是(zval).value.obj
Z_OBJ_HANDLE_P(x)
与 x.value.obj->handle
相同uint32 handle
成员(但分别实现)。
_zend_object
与 zend_types.h 中的 _zend_resource
进行比较,您可以看到这一点zend_list_insert
添加到列表中(然后使用 ZVAL_NEW_RES
宏)。 ->handle
值是该列表的索引(尽管我不确定它是从 0
还是 1
或其他一些基数开始) .class
对象(“用户类型”等),使用 zend_objects_store_put
函数将对象添加到 objects_store
列表并返回列表中项目的索引(因此它在概念上类似于 zend_list_insert
)。
0
、1
或其他)。所以 object(PDO)#11 (0) { }
意味着:
PDO
类的一个实例。关于php - var_dump 结果中的数字是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66609467/
我已经在装有 Windows 的计算机上安装了 xdebug,默认情况下它运行良好 - 轨迹色彩丰富且漂亮,但在另一台装有 ubuntu 10.10 的计算机上它是无色且没有任何格式的。 我尝试在 p
此 var_dump 结果中的数字 #11 和 (0) 是什么意思: object(PDO)#11 (0) { } 我有一个类,我从它创建了一个对象并在多个地方使用它。 最佳答案 我也不知道,一起来了
这个问题已经有答案了: UTF-8 all the way through (13 个回答) 已关闭 6 年前。 我现在正在从事日本项目。当我使用 var_dump() 时,日文字符在浏览器中无法正确
根据函数名称本身,var_dump() 转储有关所提供参数的所有内容,对象的函数除外。 有没有办法导出这些函数? 最佳答案 不能获取对象的方法,但是可以获取类的方法: var_dump(get_cla
我正在处理一个项目,但 $_SESSION['username'] 没有回应 我使用了 var_dump,这就是我从该结果中得到的结果 我的问题是如何修复. array(4) { ["SES
array(14) { [0]=> string(1) "1" ["id"]=> string(1) "1" [1]=> string(7) "myUserName" ["
您好,我有一个网站,当用户从网页中选择一个品牌后,该网站会查询 CarID。因此,将执行 SELECT 查询,然后将 CarID 值传递给 PHP 变量。然而,目前我用来调试问题的 var_dump
我想允许用户在我的网站上上传其个人资料图片的图像(文件)。他们通过 HTML 表单上传图像,但我无法将文件移动到我想要的文件夹。我不想弄乱 php.ini 文件来更改上传路径。我想使用 move_up
当处理某些 PHP 对象时,可以执行 var_dump() 并且 PHP 将值打印到屏幕上,不断打印,直到达到我假设的 PHP 内存限制。这方面的一个例子是转储一个简单的 HTML DOM 对象。我假
我不喜欢 var_dump 打印对象的方式。我想用这个函数覆盖它: function var_dump($object, $die = true) { print ''; print_
我想弄清楚为什么一个变量没有触发它应该触发的条件。 var_dump 报告如下: string(20) "0" 为什么明明是1长度却报长度为20? 最佳答案 它可能正在渲染 html。即 var_du
php var_dump 函数作用是判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型. 来看看var_dump 语法: 复制代码 代码如下: va
我可以将 var_dump($var) 的输出分配给一个变量吗?作为默认行为,var_dump() 只是在屏幕上打印输出。我想将其输出附加或分配给其他变量,然后再输出。喜欢: $a = true; $
我想 var_dump 一个变量来调试我的数据库操作。我不想安装任何调试器,所以我在我的模型中使用了 var_dump($result)。它输出错误。 This page contains the f
var_dump(object) 返回:object()#1 我真的很想知道 object()#1、object()#2 和 object()#3 之间有什么区别。 任何帮助表示赞赏。 最佳答案 va
我正在编写一个脚本来 curl 另一个网站,然后解析结果。我似乎遇到了一些奇怪的问题,我不明白它们来自哪里;我在下面包含了我的代码中有问题的部分以及从中返回的输出: '; echo $Book
有没有方便的方法来转储Scala中指定对象的所有成员, 像var_dump(), PHP function ? 最佳答案 正如“How to Dump/Inspect Object or Variab
当我尝试从 pdo 语句中获取值时,它会出错,如果我转储它,它会显示 false。 $stmt = $pdo->prepare('SELECT * FROM tbl WHERE student_id
经过几个小时的研究,到目前为止,我自己还没有找到合适的解决方案,因此我在这里! 我目前正在开发一个学校项目,该项目使用 login.php 验证器文件来检查用户是否填写了所有输入等,并创建 sessi
我有以下代码: function fetch_conversation_messages($conversation_id){ $conversation_id = (int)$convers
我是一名优秀的程序员,十分优秀!