在本文中,我们将带你了解PHP:未定义的偏移量:0,但不是dd()在这篇文章中,我们将为您详细介绍PHP:未定义的偏移量:0,但不是dd()的方方面面,并解答php报错未定义索引常见的疑惑,同时我们还
在本文中,我们将带你了解PHP:未定义的偏移量:0,但不是dd()在这篇文章中,我们将为您详细介绍PHP:未定义的偏移量:0,但不是dd()的方方面面,并解答php报错未定义索引常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的ErrorException 未定义的偏移量:0 laravel、php – codeigniter – 未初始化的字符串偏移量:0和非法字符串偏移量、php – Laravel 5.1未定义的变量:评论、php – Symfony2 – 注意:由于自定义查询,未定义的偏移量为0。
本文目录一览:- PHP:未定义的偏移量:0,但不是dd()(php报错未定义索引)
- ErrorException 未定义的偏移量:0 laravel
- php – codeigniter – 未初始化的字符串偏移量:0和非法字符串偏移量
- php – Laravel 5.1未定义的变量:评论
- php – Symfony2 – 注意:由于自定义查询,未定义的偏移量为0
PHP:未定义的偏移量:0,但不是dd()(php报错未定义索引)
$ports = $container->getPorts(); $ports = $ports[0];
这将返回Undefined offset:0
当我dd()
$ports = $container->getPorts(); dd($ports[0]); Port {#336 #privatePort: 80 #publicPort: 32780 #type: "tcp" }
完整的数组:
array:1 [▼ 0 => Port {#336 ▼ #privatePort: 80 #publicPort: 32780 #type: "tcp" } ]
我用docker-PHP sdk得到了这个错误.谁知道发生了什么?
完整代码:
public function dockerContainers() { $docker = new \Docker\Docker(); $containerManager = $docker->getContainerManager(); $containers = $containerManager->findAll(); $data = []; $x=0; foreach ($containers as $container) { $ports = $container->getPorts(); // dd($ports[0]); $ports = $ports[0]; $privatePort = $ports->getPrivatePort(); $publicPort = $ports->getPublicPort(); $data[$x++] = [ 'id' => $container->getId(),'state' => $container->getState(),'names' => $container->getNames(),'image' => $container->getimage(),'status' => $container->getStatus(),'ports' => [ 'privatePort' => $privatePort,'publicPort' => $publicPort ] ]; } return view('containers',[ 'containers' => $data ]); }
解决方法
请尝试以下代码……
foreach ($containers as $container) { //getting ports and making laravel collection object $ports = collect($container->getPorts()); if($ports->first()){ $ports = $ports->first(); $privatePort = $ports->getPrivatePort(); $publicPort = $ports->getPublicPort(); $data[$x++] = [ 'id' => $container->getId(),'publicPort' => $publicPort ] ]; } }
ErrorException 未定义的偏移量:0 laravel
php artisan vendor:publish
试试这个:
php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"
php – codeigniter – 未初始化的字符串偏移量:0和非法字符串偏移量
我循环循环,有错误.
我以前试过这个,但现在它不起作用.
我的错误是:
A PHP Error was encountered
Severity: Notice
Message: Uninitialized string offset: 0
Filename: views/audit_trail_view.PHP
Line Number: 36
Backtrace:
File:
C:\xampp\htdocs\cemo-marikina\application\views\audit_trail_view.PHP
Line: 36 Function: _error_handlerFile:
C:\xampp\htdocs\cemo-marikina\application\controllers\Employee.PHP
Line: 2819 Function: viewFile: C:\xampp\htdocs\cemo-marikina\index.PHP Line: 292 Function:
require_once
A PHP Error was encountered
Severity: Warning
Message: Illegal string offset ‘user_id’
Filename: views/audit_trail_view.PHP
Line Number: 36
Backtrace:
File:
C:\xampp\htdocs\cemo-marikina\application\views\audit_trail_view.PHP
Line: 36 Function: _error_handlerFile:
C:\xampp\htdocs\cemo-marikina\application\controllers\Employee.PHP
Line: 2819 Function: viewFile: C:\xampp\htdocs\cemo-marikina\index.PHP Line: 292 Function:
require_once
视图:audit_trail_view.PHP
<?PHP
$first_name='';
$last_name='';
$middle_name='';
$separator="";
$user_id="";
?>
<table border ="1" width="75%" >
<tr>
<td>User</td>
<td>Action</td>
<td>Date</td>
</tr>
<?PHP
foreach($view as $view){
$audit_id= $view['audit_id'];
$audit_user_id= $view['audit_user_id'];
$audit_record= $view['audit_record'];
$audit_new_record= $view['audit_new_record'];
$audit_date= $view['audit_date'];
$timestamp=strtotime($view['audit_date']);
$year=date('Y', $timestamp);
$month=date('M', $timestamp);
$day=date('d', $timestamp);
$hour=date('h', $timestamp);
$minute=date('i', $timestamp);
$ap=date('a', $timestamp);
foreach($users as $users){
$id =$users['user_id'];
if($id==$audit_id){
$first_name=$users['fname'];
$last_name=$users['lname'];
$middle_name=$users['mname'];
}
else{
$first_name='';
$last_name='';
$middle_name='';
}
}
?>
<tr>
<td><?PHP echo $last_name." ".$first_name.", ".$middle_name;?> </td>
<td><?PHP echo$audit_record.$separator.$audit_new_record;?> </td>
<td><?PHP echo$month." ".$day.", ".$year." ".$hour.":".$minute." ".$ap;?> </td>
</tr>
<?PHP
}
?>
</table>
控制器:Employee.PHP
public function audit_trail_view(){
$data['view']=$this->emp_model->audit_trail_view();
$data['users']=$this->emp_model->audit_trail_users();
$this->load->view("audit_trail_view.PHP",$data);
}
型号:Emp_model.PHP
/* AUDIT TRAIL VIEW START*/
function audit_trail_view(){
$this->db->select('*');
$this->db->from('audit_table');
$query = $this->db->get();
return $query->result_array();
}
function audit_trail_users(){
$this->db->select('*');
$this->db->from('users');
$query = $this->db->get();
return $query->result_array();
}
/* AUDIT TRAIL VIEW END*/
/* AUDIT TRAIL START */
function audit_trail(){
$data=array(
'audit_user_id'=>$this->input->post('audit_user_id'),
'audit_record'=>$this->input->post('audit_record'),
'audit_new_record'=>$this->input->post('audit_new_record'),
);
$this->db->insert('audit_table',$data);
}
/* AUDIT TRAIL END */
解决方法:
你的每一个似乎很奇怪:
foreach($users as $users){
$id =$users['user_id'];
....
不应该更像是:
foreach($users as $user){
$id =$user['user_id'];
.....
我确定迭代并分配给相同的变量名可能会导致意外的数组.
php – Laravel 5.1未定义的变量:评论
我正在尝试构建一个评论系统,用户可以在用户项目帖子上留下评论.
我可以保存并显示项目,并在特定的项目页面上(/ projects / {id})我有一个表单,用户可以在其中留下评论.我可以将注释保存在数据库中,但是当我尝试显示注释时,我得到此错误未定义变量:comments(查看:/var/www/resources/views/projects/show.blade.PHP).
我的文件:
评论模型:
class Comment extends Model
{
//comments table in database
protected $guarded = [];
public function user()
{
return $this->belongsTo('App\User');
}
// returns post of any comment
public function post()
{
return $this->belongsTo('App\Project','project_id');
}
public $timestamps = false;
}
项目模型:
class Project extends Model
{
protected $fillable = [
'user_id',
'title',
'tags',
'summary',
'file_name',
'published_at'
];
public function User()
{
return $this->belongsTo('App\User');
}
}
我的用户模型
class User extends Model implements AuthenticatableContract,
AuthorizableContract,
CanResetPasswordContract
{
use Authenticatable, Authorizable, CanResetPassword;
/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'users';
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = ['name', 'email', 'password'];
/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = ['password', 'remember_token'];
public function Projects()
{
return $this->hasMany('App\Project');
}
public function comments()
{
return $this->hasMany('App\Comment');
}
}
我的评论控制器
public function index()
{
$comments = Comment::all();
return view('projects.show', compact('comments'));
}
public function store()
{
$input = Request::all();
$comment = new Comment;
$comment->body = $input['body'];
$comment->on_projects = $input['project_id'];
$comment->from_user = Auth::user()->id;
$comment->save();
return redirect('projects/'.$input['project_id']);
}
我的看法
@section('content')
<a href="/projects">Terug naar alle projecten</a>
<h1>Werkje: {{ $project->title }}</h1>
<h3>Gemaakt door: <a href='/student/{{ $project->User->id }}'>{{ $project->User->name }}</a></h3>
<img src="{{URL::to('/')}}/uploads/projects/{{ $project->file_name }}">
<h5>Tags: {{$project->tags}}</h5>
<hr />
<h1>Reageer</h1>
@if (Auth::check())
<article> <!--Add comment -->
<br/>
{!! Form::open() !!}
{!! form::text('body', null, ['class' => 'form-control']) !!}
<br/>
{!! Form::Submit('Reageer', ['class' => 'btn btn-primary form-control']) !!}
{!! Form::hidden('project_id', $project->id) !!}
{!! Form::close() !!}
<br/>
</article>
<article>
@foreach ($comments as $comment)
<article>
<p>Body: {{ $comment->body }}</p>
<p>{{ $comment->user->name }}</p>
</article>
@endforeach
</article>
@else
<p>Gelieve in te loggen om te kunnen reageren.</p>
@endif
我的路线:
// Student routes REST methode
Route::resource('student', 'StudentController');
Route::get('student/profile', 'StudentController@getProfile');
// add comment
Route::post('projects/{id}','CommentController@store');
// show comments
Route::get('projects/{id}','CommentController@index');
//Project routes REST methode
Route::post('projects/store', 'ProjectsController@store');
Route::resource('projects', 'ProjectsController');
// Authentication routes
Route::get('auth/login', 'Auth\AuthController@getLogin');
Route::post('auth/login', 'Auth\AuthController@postLogin');
Route::get('auth/logout', 'Auth\AuthController@getlogout');
// Registration routes
Route::get('auth/register', 'Auth\AuthController@getRegister');
Route::post('auth/register', 'Auth\AuthController@postRegister');
// Password reset link request routes
Route::get('password/email', 'Auth\PasswordController@getEmail');
Route::post('password/email', 'Auth\PasswordController@postemail');
// Password reset routes
Route::get('password/reset/{token}', 'Auth\PasswordController@getReset');
我现在收到此错误:
未定义的变量:project(查看:/var/www/resources/views/projects/show.blade.PHP)
解决方法:
我的CommentController中的index()函数现在为空.
我在show {id}函数中查询了ProjectsController中的注释
public function show($id)
{
$input = Request::all();
$project = Project::all()->load("User");
$project_comments = DB::table('comments')
->select('body', 'name')
->where('on_projects', '=', $id)
->join('users', 'users.id', '=', 'comments.from_user')
->get();
return view('projects.show', ['project' => Project::findOrFail($id), 'comments' => $project_comments]);
}
这就是我解决路线冲突的方法
// add comment
Route::post('projects/{id}','CommentController@store');
// add project
Route::post('projects/store', 'ProjectsController@store');
//Project routes REST methode
Route::resource('projects', 'ProjectsController');
php – Symfony2 – 注意:由于自定义查询,未定义的偏移量为0
我有这个错误:
“Notice: Undefined offset: 0 in
C:\wamp\www\Videotheque\vendor\doctrine\lib\Doctrine\ORM\QueryBuilder.PHP
line 240”
我在线创建视频集.有两个实体:电影和流派.
在我的GenRerepository方法中,我尝试将函数findAll()重新定义为与类型相关的电影数量.
这是功能:
public function myFindAll()
{
$genres = $this->_em->createqueryBuilder('g')
// leftJoin because I need all the genre
->leftJoin('g.films', 'f')
->addSelect('COUNT(f)')
->groupBy('g')
->getQuery()
->getArrayResult();
// $genres contains all the genres and the associated movies
return ($genres);
}
解决方法:
Repository类提供了创建已为实体配置的QueryBuilder的方法,因此我们可以直接放置:
$this->createqueryBuilder('g')
今天关于PHP:未定义的偏移量:0,但不是dd()和php报错未定义索引的介绍到此结束,谢谢您的阅读,有关ErrorException 未定义的偏移量:0 laravel、php – codeigniter – 未初始化的字符串偏移量:0和非法字符串偏移量、php – Laravel 5.1未定义的变量:评论、php – Symfony2 – 注意:由于自定义查询,未定义的偏移量为0等更多相关知识的信息可以在本站进行查询。
本文标签: