Şu anda php öğrenme yaşıyorum ve ben OOP ve sınıfları test ediyorum.
Benim kod:
<?php
require('user.php');
$user = new User($username);
$projects = $user->getProjects();
for ($n = 0; $n<count($projects); $n++) {
echo "<li>";
echo "<a id=\"menu_pages\" href=\"\"><img src=\"../images/types/project.png\"/>" . $projects[$n]->name . "</a>";
echo "<ul>";
$items = $user->getItems($n);
for ($i = 0; $i<count($items); $i++) {
echo "<li><a href=\"../\"><img src=\"../images/types/" . $items[$i]->type . ".png\"/>" . $items[$i]->name . "</a></li>";
}
echo "</ul>";
echo "</li>";
}
?>
and I'm getting the error: Fatal error: Cannot redeclare class Item in /home/ios/public_html/classes/item.php on line 2
Ben onun ben kullanıyorum çünkü bulundu
$items = $user->getItems($n);
bir döngüde. Çünkü bunu değiştirirseniz
$items = $user->getItems(1);
çalışır. Ben gerçekten zaten hata etrafında almanın çözemiyorum.
Lütfen yardım :)
Şimdiden teşekkürler.
Yöntemleri:
function getItems($parent,$type = NULL) {
$items = array();
$username = $this->uname;
$userid = $this->getId($username);
include('classes/config.php');
if ($type != NULL) {
}
require_once('classes/item.php');
foreach ($pdo->query($sql) as $row) {
$instance = new Item();
$instance->name = $row['name'];
$instance->id = $row['id'];
$instance->type = $row['type'];
$instance->parent_id = $row['parent_id'];
$items[] = $instance;
unset($instance);
}
function getProjects() {
$projects = array();
$username = $this->uname;
$userid = $this->getId($username);
include('classes/config.php');
require_once('classes/project.php');
foreach ($pdo->query($sql) as $row) {
$proj = new Project();
$proj->name = $row['name'];
$proj->id = $row['id'];
$projects[] = $proj;
unset($proj);
}
return $projects;
}
edit:
Onun hala değişen çalışmıyor. Kod hatasız geçer, ama şimdi ilk altında ne olması gerektiğini, ikinci altında ve ilk boştur. Benim mantık herhangi bir sorunları görmek?