GVKun编程网logo

php – 如何隐藏错误“试图获取非对象的属性”(php获取隐藏字段的值)

8

此处将为大家介绍关于php–如何隐藏错误“试图获取非对象的属性”的详细内容,并且为您解答有关php获取隐藏字段的值的相关问题,此外,我们还将为您介绍关于ErrorException试图获取非对象的属性

此处将为大家介绍关于php – 如何隐藏错误“试图获取非对象的属性”的详细内容,并且为您解答有关php获取隐藏字段的值的相关问题,此外,我们还将为您介绍关于ErrorException 试图获取非对象的属性“id” - 试图在数据库上进行注册、json_decode()返回错误“注意:试图获取非对象的属性”、Laravel 5.8:尝试获取非对象的属性“created_at”的奇怪错误、Laravel 7试图获取非对象的属性“域”(查看:的有用信息。

本文目录一览:

php – 如何隐藏错误“试图获取非对象的属性”(php获取隐藏字段的值)

php – 如何隐藏错误“试图获取非对象的属性”(php获取隐藏字段的值)

我有以下代码,它可以正常工作. Twitter好友列出正确,但似乎当显示最后一项时,错误“通知:试图获取非对象的属性”显示4次.

由于代码可以正常工作,我想要一种隐藏这些错误的方法.

$connection = getConnectionWithAccesstoken($consumerkey,$consumersecret,$accesstoken,$accesstokensecret);
$tweets6 = $connection->get("https://api.twitter.com/1.1/friends/list.json?screen_name=".$twitteruser."&count=".$notweets);
foreach ($tweets6 as $tweet)
{
    for($i = 0; $i < count($tweet); $i++)
    {
        echo $tweet[$i] -> name;
        echo "<br />";
    }
}

解决方法

如果对象在使用其值之前具有某个属性,则可以添加检查器

if (isset($tweet[$i]->name)) {
    // process

}

ErrorException 试图获取非对象的属性“id” - 试图在数据库上进行注册

ErrorException 试图获取非对象的属性“id” - 试图在数据库上进行注册

如何解决ErrorException 试图获取非对象的属性“id” - 试图在数据库上进行注册?

我正在尝试使用来自用户的外键进行“livros”注册,但是当我尝试将信息发送到数据库时,此错误出现“ErrorException Trying to get property ''id'' of non-object”可能有人帮我?

LIVROCONTROLLER

<?PHP

namespace App\Http\Controllers;


use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Models\Livro;

class LivroController extends Controller
{
    /**
     * display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */

    protected $request;
    private $repository;
    private $livro;

    public function __construct(Livro $livro)
    {
        $this->livro = $livro;
    }
        
    
    
    public function index()
    {
       /* $title = ''listagem dos livros'';
        $livros = $this->livro->all();
        return view (''livros/cadastro'',compact(''livros'',''title''));*/
        return view (''livros/cadastro'');
    }

    protected function validator(Request $request)
    {
        return Validator::make($request,[
            ''namel'' => [''required'',''string'',''max:200''],''autor'' => [''required'',''email'',''editora'' => [''required'',''max:50''],''categoria''=> [''required'',''min:50''],''classificação''=> [''required'',''min:1'',''max:2''],''descricao''=> [''required'',''min:200''],''image''=> [''not required''],]);
    }

     /**
      * Store a newly created resource in storage.
      *
      * @param  \Illuminate\Http\Request  $request
      * @return \Illuminate\Http\Response
      */
    public function create(Request $request)
    {
        
        $user = Auth::user()->id;
        Livro::create([
            ''users_id'' => $user,''namel'' => $request[''namel''],''autor'' => $request[''autor''],''editora'' => $request[''editora''],''categoria''=> $request[''categoria''],''classificação''=>$request[''classificação''],''descricao''=>$request[''descricao''],''image''=>$request[''image''],]);
        return view(''livros/cadastro'');
    }

    
    

}

LIVROS 迁移表

<?PHP

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateLivrosTable extends Migration
{
        /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create(''livros'',function (Blueprint $table) {
            $table->id();
 
            $table->unsignedBigInteger(''users_id'');
            $table->foreign(''users_id'')->references(''id'')->on(''users'');
            /*Auth::user()->id;*/

            $table->text(''namel'');
            $table->string(''autor'');
            $table->string(''editora'');
            $table->string(''categoria'');
            $table->string(''classificação'');
            $table->text(''descricao'');
            $table->string(''image'')->nullable();
            $table->timestamp(''created_at'')->nullable();
            $table->timestamp(''updated_at'')->nullable();


        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists(''livros'');
    }
}

LIVRO 刀片文件

@extends(''layouts.app'')

@section(''content'')
<div>
    <div>
        <div>
            <div>
            <br>
            <div>
               <h4>CADASTRO DE LIVROS</h4>

               </div>
<br><br>
                <div>
                    <form method="POST" enctype=”multipart/form-data” action="{{ url(''/cadastro_livros'') }}">
                        @csrf

                        <div>
                            <label for="namel">{{ __(''Nome'') }}</label>
                            
                            <div>
                                <input id="namel" type="text"name="namel" value="{{ old(''namel'') }}" required autocomplete="namel" autofocus>

                                @error(''namel'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror

                                <br>
                            </div>
                        </div>

                        <div>
                            <label for="autor">{{ __(''Autor'') }}</label>
                           
                            <div>
                                <input id="autor" type="text"name="autor" value="{{ old(''autor'') }}" required autocomplete="autor">

                                @error(''autor'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror
                                <br>
                            </div>
                        </div>



                        <div>
                            <label for="editora">{{ __(''editora'') }}</label>
                            
                            <div>
                                <input id="editora" type="text"name="editora" value="{{ old(''editora'') }}" required autocomplete="editora" autofocus>

                                @error(''editora'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror 

                                <br>
                            </div>
                        </div>


                        <div>
                            <label for="categoria">{{ __(''categoria'') }}</label>
                            
                            <div>
                                <input id="categoria" type="text"name="categoria" value="{{ old(''categoria'') }}" required autocomplete="categoria" autofocus>

                                @error(''categoria'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror

                                <br>
                            </div>
                        </div>

                        <div>
                            <label for="classificação">{{ __(''classificação (1-10)'') }}</label>
                            
                            <div>
                                <input id="classificação" type="number" maxlength="2"name="classificação" value="{{ old(''classificação'') }}" required autocomplete="classificação" autofocus>

                                @error(''classificação'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror 

                                <br>
                            </div>
                        </div>

                        <div>
                            <label for="descricao">{{ __(''descricao'') }}</label>
                            
                            <div>
                                <input id="descricao" type="text"name="descricao" value="{{ old(''descricao'') }}" required autocomplete="descricao" autofocus>

                                @error(''descricao'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror 

                                <br>
                            </div>
                        </div>

                        <div>
                            <label for="image">{{ __(''imagem'') }}</label>
                            
                            <div>
                                <input type="file"name="image" value="{{ old(''image'') }}" required autocomplete="image" autofocus>

                                @error(''image'')
                                    <spanhttps://www.jb51.cc/tag/Feed/" target="_blank">Feedback" role="alert">
                                        <strong>{{ $message }}</strong>
                                    </span>
                                @enderror

                                <br>
                            </div>
                        </div>

                        

                        <br><br>
                        
                                <button type="submit">
                                    {{ __(''Cadastrar'') }}
                                </button>
                           


                    </form>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

前往注册“LIVROS”的路线

Route::get(''/cad_livros'',[App\Http\Controllers\LivroController::class,''index'']); 
Route::post(''/cadastro_livros'',''create'']);

解决方法

我认为您没有登录,并且在您的 create 方法中,您试图获取 idAuth::user(),即 null,因此您会收到该错误.

如果此 create 需要用户登录,请使用 auth 中间件保护您的路由。

Route::post(
    ''/cadastro_livros'',[App\Http\Controllers\LivroController::class,''create'']
)->middleware(''auth'');

json_decode()返回错误“注意:试图获取非对象的属性”

json_decode()返回错误“注意:试图获取非对象的属性”

我正在尝试编写一个脚本,该脚本使用cURL从远程位置(在本例中为twitch.tv)获取JSON文件(不要以为该部分太相关,尽管无论如何我还是最好提一下)。出于示例目的,假设它返回的JSON对象存储在变量中后看起来像这样:

$json_object = {"_links":{"self":"https://api.twitch.tv/kraken/streams/gmansoliver","channel":"https://api.twitch.tv/kraken/channels/gmansoliver"},"stream":null}

我访问“流”属性,我尝试了以下代码:

<?php
    $json_object = {"_links":{"self":"https://api.twitch.tv/kraken/streams/gmansoliver","stream":null}

    $json_decoded = json_decode($json_object,true);
    echo $json_decoded->stream;
?>

当我尝试此操作时,出现错误“注意:试图在第48行的D:\ Servers \ IIS \ Sites \ mysite \
getstream.php中获取非对象的属性”。

我是否使用json_decode()错误,或者从抽搐发送的JSON对象有问题吗?

编辑:

我现在有了JSON对象:

{"access_token": "qwerty1235","refresh_token": "asdfghjkl=","scope": ["user_read"]}

如果尝试使用对其进行解码,则会json_decode()收到以下错误:Object of class stdClass could not be converted to string。有什么建议吗?

预先感谢您的任何帮助

Laravel 5.8:尝试获取非对象的属性“created_at”的奇怪错误

Laravel 5.8:尝试获取非对象的属性“created_at”的奇怪错误

如何解决Laravel 5.8:尝试获取非对象的属性“created_at”的奇怪错误?

我使用 Laravel 5.8 来开发我的项目,在这个项目中,我在 Member 模型和 Student 模型之间有一个 OnetoMany 关系,如下所示:

Student.PHP

public function member()
    {
        return $this->belongsTo(Student::class,''std_mbr_id'');
    }

Member.PHP

public function student()
    {
        return $this->hasOne(Student::class,''std_mbr_id'');
    }

然后在控制器,我添加了这个:

public function index()
    {
        $student = new Student();
        $students = $student->searchStudents()->paginate(20);
        $custom = new Student();
        $customs = $custom->all();
        return view(''admin.students.custom'',compact(''students'',''customs''));
    }

现在在视图中,我想像这样获得 created_at 时间戳:

$customs->find($student->mbr_id)->created_at

但这会返回这个错误:

试图获取非对象的属性“created_at”

但是,当我执行 dd($customs->find($student->mbr_id)) 时,我可以正确获取时间戳:

enter image description here

那么在这种情况下如何访问 created_at 时间戳?


更新 #1:

{{ dd($customs->find($student->mbr_id)->created_at ) }} 的结果:

enter image description here

解决方法

首先检查 $customs->find($student->mbr_id) 是否有返回:

$customs->find($student->mbr_id) ? $customs->find($student->mbr_id)->created_at : ''not found'';

Laravel 7试图获取非对象的属性“域”(查看:

Laravel 7试图获取非对象的属性“域”(查看:

在您的刀片服务器文件中更改

<td> {{ $website['domain'] }}</td>
<td> {{ $website['username'] }}}</td>
<td> {{ $website['serverhostname'] }}</td>
                 
,

与上面提到的使用数组值(而不是对象属性)的方法一起遇到的问题是您要合并的两个数组中的问题

foreach ($PackageSelect as $cpanelAccount) {

        $cpanelAcounts = [ 'username' => $cpanelAccount['username'],'server' => $cpanelAccount['serverhostname'],'domain' => $cpanelAccount['domain'],'doc_root' => '/'];

    }

这最终将产生$ cpanelAcounts只是一个带有键的平面数组:'username','server','domain'和'doc_root',因此,当您使用“ foreach”进行深入研究时,您正在迭代这些键的值-它们都不具有带有键“域”的子数组,这就是错误 我想你希望它是一个数组数组 所以一定是

$cpanelAcounts[] = [ 'username' => $cpanelAccount['username'],'doc_root' => '/'];

或使用array_push()

关于php – 如何隐藏错误“试图获取非对象的属性”php获取隐藏字段的值的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于ErrorException 试图获取非对象的属性“id” - 试图在数据库上进行注册、json_decode()返回错误“注意:试图获取非对象的属性”、Laravel 5.8:尝试获取非对象的属性“created_at”的奇怪错误、Laravel 7试图获取非对象的属性“域”(查看:的相关信息,请在本站寻找。

本文标签: