Muhtemelen kolay bir - PHP / CodeIgniter'ın 'Tanımsız Değişken'

2 Cevap php

Sabah hepiniz

Bu muhtemelen kolay biridir ama ben ancak dün gece hiç uyku var ve bir şey anlamak için mücadele ediyorum.

Ben Points.php denilen yaptık bir CodeIgniter kütüphanesi var. İşte Noktalar içeriği bulunuyor:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Points
{

    function __construct()
    {
        $this->ci =& get_instance();
        $this->ci->load->database();
    }

    function getpoints($params)
    {
        echo $userid;
    }

}

/* End of file Points.php */
/* Location: ./application/libraries/Points.php */ ?>

Gördüğünüz gibi, ben yavaş yavaş inşa ediyorum ve bu basit tutulur ediliyor.

Benim Gösterim birinde, ben (zaman için varlık sadece URI üçüncü segment) 'noktaları' numarasını görüntülemek istiyorum. Ben bunu şöyle diyoruz:

<p>Points: <?php $params['user_id']=$this->uri->segment(3,1); echo $this->points->getpoints($params); ?></p>

Ben görünümünde geri almak uyarı şudur:

Bir PHP hata ile karşılaşıldı

Önem: Bildirimi

Mesaj: Undefined variable: kimliği

Dosya Adı: kütüphaneler / Points.php

Evet ben böyle basit bir sorun olduğunu biliyorum ama ben çok şey denedim. Bazı varyasyonlar Points.php $ params ['kimliği'] yankılanıyordu şunlardır; vb Ama ben ne yapıyorum yanlış görmüyorum?

Haha, bu benim ilk CodeIgniter sınıf ve ben ilk adımda düştüm ...

2 Cevap

Olmamalı

function getpoints($params)
{
    return $params['user_id']; // since you're passing the whole array
}

return yerine echo, zaten diğer tarafta yankı kullanıyorsanız kullanımı

Bok düzgün kaynak kodu okumadım, bir dizi tek bir değişken olarak erişmek gerekir.

$params['userid']