Merhaba arkadaşlar,
Ben bir oyun için yönetim paneli yapmaya çalışıyordum bunu laravel frameworküne aktarmak istedim fakat Laravel'de get değerlerini nasıl göndereceğimi bilmiyorum. Normalde framework kullanmadan önce $_GET ile aldığım değeri istediğim sınıfa yönlendiriyordum.
Kodlarımı kısaca açıklamak istersem.
Zip dosyanın içindeki xdb dosyalarından kullanıcının itemlerini filan çekiyorum ama bu itemlerin isimleri ayrı pak dosyasında controller içinde buna ulaştım. Bende daha modüler olması için helper fonksiyonu yazdım. Buraya kadar herşey güzel fakat helper fonksiyonuna bağladığım sınıfa controllerdaki route değerini gönderemiyorum. Anlatabildim mi bilmiyorum ama size kodlarımı gösteriyim.
Şimdiden yardımcı olan arkadaşlara teşekkürlerimi sunarım..
App\İtemdil.php
<?php
/**
* Created by PhpStorm.
* User: gsera
* Date: 1/27/2016
* Time: 12:30 AM
*/
namespace App;
use ZipArchive;
class Itemdil
{
public $dilPaketYol;
public $parametre;
public function dilYol($dosya)
{
$dilPakYol = $this->dilPaketYol;
$parametre = $this->parametre;
$dilPakYol = storage_path($dilPakYol);
$yazi = "";
$parametre1 = "";
$parametree = explode("-", $parametre);
foreach($parametree as $param)
{
$parametre1.=$param."/";
}
$parametre1 = rtrim($parametre1, "/");
$parametre1 = explode("/", $parametre1);
$nekadar = count($parametre1);
$nekadar-=1;
unset($parametre1[$nekadar]);
$parametre2 = "";
foreach($parametre1 as $param2) {
$parametre2 .= $param2 . "/";
}
$parametre2 = $parametre2.$dosya;
return $parametre;
}
public function dilGetir($dilPakYol, $parametre)
{
$zip = new ZipArchive();
$file = $dilPakYol;
$zip->open($file);
$deger2 = $zip->getFromName($parametre);
$deger3 = "";
return $parametre;
}
}
Blade templatinde hızlı ulaşabilmem için helper fonksiyonu
<?
use App\Itemdil;
function dilYol($dosya)
{
$helpers = new Itemdil();
return $helpers->dilYol($dosya);
}
?>
controllerdaki show fonksiyonum
bakın buradan id, $pakyolu ve $parametre değerlerini. app\itemdil sınıfına göndermek istiyorum ama nasıl yapacağımı bulamadım.
Not: show içindeki bazı kodlar sizi yanıltmasın helper fonksiyonu yazmadan önce kullanıyordum gayet başarılı fakat dediğim gibi daha dinamik olması ve controllera bağlı kalmamak için blade üzerinden veriyi almak istiyorum.
public function show($id, $pakYolu, $parametre)
{
$pakYolu = storage_path($pakYolu);
$yazi = "";
$parametre1 = "";
$parametree = explode("-", $parametre);
foreach($parametree as $param)
{
$parametre1.=$param."/";
}
$parametre1 = rtrim($parametre1, "/");
$parametre = $parametre1;
switch($id)
{
case 'su';
$yazi.= 'su he';
break;
case 'gameMechanics.world.mob.interaction.VendorTable';
$yazi.= 'vendortable()';
break;
case 'gameMechanics.constructor.schemes.item.ItemResource';
$deger = $this->ItemResource($pakYolu, $parametre);
break;
default;
$yazi.= 'Lütfen hangi dosyaya bakmak istediğinizi belirtin.';
break;
}
$itemAdi = $this->dilYol('tr.pak', $parametre, $deger->name['href']);
$itemAciklama = $this->dilYol('tr.pak', $parametre, $deger->description['href']);
return view('item/show', compact('deger', 'pakYolu', 'itemAdi', 'itemAciklama'));
}