donglianjiang9321 2015-05-29 16:00 采纳率: 0%
浏览 10

在php中无法访问空属性错误

I have some text stored in a table. I want to replace all the expressions that look like this : [%parameter_name] with the corresponding value stored in another table.

All the parameters and in which column I must fetch their value are stored in a third column.

I tried to make a function to put all the needed patterns and their value in an array. However, it gives me a fatal error. Why?

Here is the code :

$search = $db->prepare("
    SELECT *
    FROM table 
    WHERE id = ?");
$search->execute(array($id));
$search->setFetchMode(PDO::FETCH_OBJ);

while($result = $search->fetch()){
        $search2 = $db->prepare("
            SELECT parameter_name,
                read_from
            FROM pattern
            WHERE type = ?");
        $search2->execute(array(strtolower($result->type)));
        $search2->setFetchMode(PDO::FETCH_OBJ);

        while($pattern = $search2->fetch()){
                array_push($patterns, '/\[%'.$result->type.'\.'.$pattern->parameter_name.'\]/i');
                $column = explode(',', $pattern->read_from);
                if(count($column) == 1){ 
                    $col = $column[0];
                    // ERROR ON THE LINE BELOW
                    $value = $result->$col; 
                }
                else{ 
                    $value = 0;
                    foreach($column as $col){
                        // BUT NOT ON THE ONE BELOW
                        $value += $result->$col;
                    }
                }
                array_push($replacements, $value);

        }
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
    • ¥100 为什么这个恒流源电路不能恒流?
    • ¥15 有偿求跨组件数据流路径图
    • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
    • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
    • ¥15 CSAPPattacklab
    • ¥15 一直显示正在等待HID—ISP
    • ¥15 Python turtle 画图
    • ¥15 stm32开发clion时遇到的编译问题
    • ¥15 lna设计 源简并电感型共源放大器