Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 注意:未定义的属性:stdClass_Php_Mysql_Oop - Fatal编程技术网

Php 注意:未定义的属性:stdClass

Php 注意:未定义的属性:stdClass,php,mysql,oop,Php,Mysql,Oop,我的脚本中有以下问题: 注意:未定义的属性:stdClass::$job_详细信息,位于第1034行的/Applications/MAMP/htdocs/curafides/home.php中 我如何解决这个问题? 职位名称非sgh的示例 有关职位详情: <?php if(strlen($jb_row->job_details) > 120) { echo substr($jb_row->job_details ,0 ,120)."...";

我的脚本中有以下问题:

注意:未定义的属性:stdClass::$job_详细信息,位于第1034行的/Applications/MAMP/htdocs/curafides/home.php中

我如何解决这个问题? 职位名称非sgh的示例

有关职位详情:

<?php

    if(strlen($jb_row->job_details) > 120) {
        echo substr($jb_row->job_details ,0 ,120)."...";
    } else {
        echo $jb_row->job_details;
    }

?>

请尝试以下操作:

if( isset($jb_row->job_details)  && strlen($jb_row->job_details) > 120){
   echo substr($jb_row->job_details ,0 ,120)."...";
}else{
  echo $jb_row->job_details;
 }

是什么代码创建了$jb_行?您几乎没有提供任何代码上下文,但只提供了错误消息,我假设在$jb_行中没有您尝试使用的任何对象的正确实例,因为它在其中找不到任何名为job_details的属性。如果$jb_row是一个对象,但没有job_details属性,该怎么办?现在,如果$jb_row不是对象,它将抛出未定义属性的相同异常。但无论如何,这是一个糟糕的验证,因为它应该在该点之前,在实例化行进行测试。由于缺少OP的信息,我们不知道$jb_行是如何构建的,所以您的答案只是猜测。