相关疑难解决方法(0)

如何在PHP中定义一个空对象

使用新数组我这样做:

$aVal = array();

$aVal[key1][var1] = "something";
$aVal[key1][var2] = "something else";
Run Code Online (Sandbox Code Playgroud)

对象是否有类似的语法

(object)$oVal = "";

$oVal->key1->var1 = "something";
$oVal->key1->var2 = "something else";
Run Code Online (Sandbox Code Playgroud)

php object

357
推荐指数
12
解决办法
34万
查看次数

如何使用PHP从JSON中提取数据?

这是一个一般参考问题和答案,涵盖了许多永无止境的"如何访问我的JSON中的数据?" 的问题.它可以处理在PHP中解码JSON和访问结果的广泛基础知识.

我有JSON:

{
    "type": "donut",
    "name": "Cake",
    "toppings": [
        { "id": "5002", "type": "Glazed" },
        { "id": "5006", "type": "Chocolate with Sprinkles" },
        { "id": "5004", "type": "Maple" }
    ]
}
Run Code Online (Sandbox Code Playgroud)

如何在PHP中解码并访问结果数据?

php json

198
推荐指数
3
解决办法
25万
查看次数

在php中创建匿名对象

我们知道,在JavaScript中创建匿名对象很容易,如下面的代码:

var object = { 
    p : "value", 
    p1 : [ "john", "johnny" ]
};

alert(object.p1[1]);
Run Code Online (Sandbox Code Playgroud)

输出:

an alert is raised with value "johnny"
Run Code Online (Sandbox Code Playgroud)

在PHP的情况下可以应用相同的技术吗?我们可以在PHP中创建匿名对象吗?

php oop object

128
推荐指数
7
解决办法
8万
查看次数

如何访问数组/对象?

我有以下数组,当我这样做时print_r(array_values($get_user));,我得到:

Array (
          [0] => 10499478683521864
          [1] => 07/22/1983
          [2] => email@saya.com
          [3] => Alan [4] => male
          [5] => Malmsteen
          [6] => https://www.facebook.com  app_scoped_user_id/1049213468352864/
          [7] => stdClass Object (
                   [id] => 102173722491792
                   [name] => Jakarta, Indonesia
          )
          [8] => id_ID
          [9] => El-nino
          [10] => Alan El-nino Malmsteen
          [11] => 7
          [12] => 2015-05-28T04:09:50+0000
          [13] => 1
        ) 
Run Code Online (Sandbox Code Playgroud)

我尝试按如下方式访问数组:

echo $get_user[0];
Run Code Online (Sandbox Code Playgroud)

但这显示了我:

未定义0

注意:

我从Facebook SDK 4获得这个数组,所以我不知道原来的阵列结构.

我怎样才能email@saya.com从数组中获取值作为示例?

php arrays properties class object

58
推荐指数
2
解决办法
5万
查看次数

获取一个数字的PHP对象属性

我正在尝试将JSON数据中的属性解码为PHP对象.这只是一个YouTube数据API请求,它返回一个内容对象喜欢的视频对象;

[content] => stdClass Object
                (
                    [5] => https://www.youtube.com/v/r4ihwfQipfo?version=3&f=videos&app=youtube_gdata
                    [1] => rtsp://v4.cache7.c.youtube.com/CiILENy73wIaGQn6pSL0waGIrxMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
                    [6] => rtsp://v6.cache3.c.youtube.com/CiILENy73wIaGQn6pSL0waGIrxMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp
                )
Run Code Online (Sandbox Code Playgroud)

干

$object->content->5
Run Code Online (Sandbox Code Playgroud)

引发"意想不到的T_DNUMBER" - 这非常有意义.但是如何获得一个数字属性的值?

我相信我应该知道这一点.提前致谢.

php json properties object

31
推荐指数
2
解决办法
2万
查看次数

不能使用带有数字键作为字符串的PHP数组

我有一个PHP数组,其数字键作为字符串类型.

但是当我尝试访问它们时,PHP会给我一个未定义的索引错误.

$a = (array)json_decode('{"1":1,"2":2}');
var_dump($a);
var_dump(isset($a[1]));
var_dump(isset($a["1"]));
var_dump($a[1]);
var_dump($a["1"]);
Run Code Online (Sandbox Code Playgroud)

输出:

array (size=2)
    '1' => int 1
    '2' => int 2

boolean false

boolean false

ERROR: E_NOTICE: Undefined offset: 1

null

ERROR: E_NOTICE: Undefined offset: 1

null

我如何访问这些值?

演示:http://codepad.viper-7.com/8O03IM

php arrays json

28
推荐指数
3
解决办法
9837
查看次数

对象属性名中的特殊字符

如果我有一个包含以%符号开头的属性的对象,我该如何获取其值.

如果我使用

echo $myobject->%myproperty;
Run Code Online (Sandbox Code Playgroud)

我收到一个错误

Parse error: syntax error, unexpected '%', expecting T_STRING or T_VARIABLE
Run Code Online (Sandbox Code Playgroud)

我知道我不应该在变量名中使用%,但这不是我的行为而且我坚持使用它.

php syntax

25
推荐指数
1
解决办法
1万
查看次数

如何访问以数字开头的对象属性?

我正在研究一个现有的代码库并找回一个带有一个以数字开头的属性的对象,如果我调用print_r该对象,我可以看到它.

让我们说吧$Beeblebrox->2ndhead.当我尝试这样访问它时,我收到一个错误:

解析错误:语法错误,意外T_LNUMBER,期待T_STRING或T_VARIABLE或'{'或'$'

我怎样才能获得该属性?

php object

21
推荐指数
2
解决办法
5663
查看次数

laravel如何访问具有表的数字名称的列?

我创建了一个数字为22的表作为列名.如何访问此列?

在此输入图像描述

内容:

在此输入图像描述

我试过了

$obj = Tablename::find(1)->first();
$obj->22;
$obj->'22';   //'syntax error, unexpected ''22''
$obj->"22";
$obj->`22`;
$obj[22];
$arr = $obj->toArray();
var_dump($arr); //  array(15) { ["id"]=> string(2) "25" ["out_trade_no"]=> string(14) "14847080930025" ["22"]=> string(0) "2"
$arr[22];       // 'ErrorException' with message 'Undefined offset: 22'
$arr['22'];     // 'ErrorException' with message 'Undefined offset: 22'
$arr["22"];     // 'ErrorException' with message 'Undefined offset: 22'
$arr[`22`];     // 'ErrorException' with message 'Undefined index: ' in
$arr[{'22'}];   //  'syntax error, unexpected '{', expecting ']'' in
Run Code Online (Sandbox Code Playgroud)

没有用.

编辑为实现的答案:也得到null.

var_dump($orders[0]);
var_dump($orders[0]->id);
var_dump($orders[0]->{'22'});
$col = …
Run Code Online (Sandbox Code Playgroud)

php database arrays object laravel

19
推荐指数
3
解决办法
6338
查看次数

什么是整数属性,'\ 0A\0A'的含义是什么?

我从PHP手册中读到了这个:

如果将对象转换为数组,则结果是一个数组,其元素是对象的属性.键是成员变量名,有一些值得注意的例外:整数属性是不可访问的 ; 私有变量的类名前置于变量名; 受保护的变量在变量名前面加上'*'.这些前置值在任一侧都有空字节. 这可能会导致一些意外行为:

class A {
    private $A; // This will become '\0A\0A' }

class B extends A {
    private $A; // This will become '\0B\0A'
    public $AA; // This will become 'AA' }

var_dump((array) new B()); 
Run Code Online (Sandbox Code Playgroud)

上面看起来有两个名为'AA'的键,虽然其中一个 实际命名为'\ 0A\0A'.

我不太明白与像字样那些部分的含义此.

什么是整数属性?

"这些前置值在两侧都有空字节.这可能会导致一些意外行为"的含义是什么?

"上面的内容似乎有两个名为'AA'的键,虽然其中一个实际命名为'\ 0A\0A'"

php

6
推荐指数
1
解决办法
392
查看次数

标签 统计

php ×10

object ×6

arrays ×3

json ×3

properties ×2

class ×1

database ×1

laravel ×1

oop ×1

syntax ×1