2016-03-22 16 views
1

ile Sorgulama'yı seçin OOP PHP'de oluşturulmuş bir uygulamaya çok az ayar yapmak zorundayım. OOP ile hiç deneyimim yok ve normalde sadece küçük işlevler için PHP kullanıyorum. Veritabanımdan bir yapı işlevi ve değişkeninde kullanmak için veriyi seçmek istiyorum. Kodum altında şimdi bir dizi ile yapılanlara var doldurulur eğer foreach döngüsü kontrol edecek bir uygulama, bu sürümünde YaniBir müşteri için OOP PHP ORM

public function readTwitter(){ 

    $accounts = array(); 
    $hastags = array('coldplay'); 

    \ORM::for_table('feed_items')->where('portal_reference', 'tw')->delete_many(); 

    foreach($accounts as $account) { 
     $feed = $this->twitter->getFeedByAccount($account); 

     foreach($feed as $post){ 
      $this->twitter->savePost($post); 
     } 
    } 

    foreach($hastags as $hashtag) { 
     $feed = $this->twitter->getFeedByHashtag($hashtag); 

     foreach($feed->statuses as $post){ 
      $this->twitter->savePost($post); 
     } 
    } 
} 

açıklamak ve ben gibi ne fonksiyonu readTwitter() bunu kullanacak benim veritabanından belirli bir satırı seçer bir seçme sorgusu aşağıdaki gibi OOP başvurum yazılmış bir dizi yerine bu kullanmaktır (prosedürel php yazılmış) var:

$dbCon = mysqli_connect("localhost", "root", "root", "database"); 

    if (mysqli_connect_errno()) { 
     echo "Failed to connect: " . mysqli_connect_error(); 
    } 

$sql = "SELECT * FROM `questions` WHERE `location` = 'wall' ORDER BY `questions`.`id` DESC "; 

$query = mysqli_query($dbCon, $sql); 
if ($query) { 
$row = mysqli_fetch_row($query); 

$hashtags = $row[2]; //instead of array('coldplay'); 
} 

cevap

0
public function readTwitter(){ 

    $dbCon = mysqli_connect("localhost", "root", "root", "database"); 

    if (mysqli_connect_errno()) { 
     echo "Failed to connect: " . mysqli_connect_error(); 
    } 

    $sql = "SELECT * FROM `vragen` WHERE `location` = 'wall' ORDER BY `vragen`.`id` DESC "; 

    $query = mysqli_query($dbCon, $sql); 
    if ($query) { 
     $row = mysqli_fetch_row($query); 

    $accounts = $row[3]; 
    $hashtags = $row[2]; 

    \ORM::for_table('feed_items')->where('portal_reference', 'tw')->delete_many(); 


     $feed = $this->twitter->getFeedByAccount($accounts); 

     foreach($feed as $post){ 
      $this->twitter->savePost($post); 
     } 


     $feed = $this->twitter->getFeedByHashtag($hashtags); 

     foreach($feed->statuses as $post){ 
      $this->twitter->savePost($post); 
     } 
    } 
} 

denedim kodu birleştirmek istiyorum ve istediğim gibi çalışır, ama ben bunu düşünmüyorum OOP için doğru yol değil mi?