<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Gökalp Kuşçu &#187; array_combine()</title>
	<atom:link href="http://www.gokalpkuscu.com/tag/array_combine/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gokalpkuscu.com</link>
	<description>Mezun olduuuuu :)</description>
	<lastBuildDate>Mon, 21 Jun 2010 23:09:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Php&#8217;de tüm tablolar için ortak insert function</title>
		<link>http://www.gokalpkuscu.com/phpde-tum-tablolar-icin-ortak-insert-function</link>
		<comments>http://www.gokalpkuscu.com/phpde-tum-tablolar-icin-ortak-insert-function#comments</comments>
		<pubDate>Thu, 14 Jan 2010 23:25:43 +0000</pubDate>
		<dc:creator>Gökalp Kuşçu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[array_combine()]]></category>
		<category><![CDATA[array_map()]]></category>
		<category><![CDATA[mysql toplu insert]]></category>
		<category><![CDATA[ortak insert function]]></category>
		<category><![CDATA[php ortak insert function]]></category>
		<category><![CDATA[php toplu insert]]></category>
		<category><![CDATA[php tüm tablelar için ortak insert function]]></category>

		<guid isPermaLink="false">http://www.gokalpkuscu.com/?p=348</guid>
		<description><![CDATA[Merhaba arkadaşlar bugünlerde bir kod kafama çok takıldı, oluşturduğum her tabloya bilgi girişi yapacağım ve bunları her tablom için ayrı ayrı insert komutu yazacağıma güzel bir function yazıp, bu functiona da sadece table ismini ve verilerimi dizi şeklinde gönderip insert ettirmek çok mantıklı geldi. İlk olarak colonlarımı çekmeliydim sonra ise verilerimi alıp, bildiğimiz insert syntax [...]]]></description>
			<content:encoded><![CDATA[<p>Merhaba arkadaşlar bugünlerde bir kod kafama çok takıldı, oluşturduğum her tabloya bilgi girişi yapacağım ve bunları her tablom için ayrı ayrı insert komutu yazacağıma güzel bir function yazıp, bu functiona da sadece table ismini ve verilerimi dizi şeklinde gönderip insert ettirmek çok mantıklı geldi.</p>
<p>İlk olarak colonlarımı çekmeliydim sonra ise verilerimi alıp, bildiğimiz insert syntax ına dönüştürüp, query olarak işlemeliydi.</p>
<p>http://tr.php.net bu konuda çok yardımcı oldu ve şöyle bir kod yazdım&#8230;</p>
<p><span id="more-348"></span></p>
<p>Bu kod içinde bilmemiz gerekn bir kaç yapı var ilk önce onlardan bahsedeyim. </p>
<blockquote><p>
<strong>array_map()</strong> : Bu function bize dizimizi, geri döndük bir function içinde işletmemizi sağlıyor nasıl mı ? </p>
<p>$a = array(1, 2, 3, 4, 5);<br />
$b = array_map(&#8220;cube&#8221;, $a);</p>
<p>Burdaki cube ifadesi bir function şöyleki :</p>
<p> function cube($sayi)<br />
  {<br />
   return $sayi*$sayi*$sayi<br />
  }</p>
<p>array_map ilk önce bu dizi elemanlarımızı, functiona gönderiyor dönen sonucu aynen geri dizideki yerine yazıyor.</p>
<p>OUT: $b = (1,8,27,64,125 ); </p>
</blockquote>
<p>Bunu nerede kullanacağız derseniz,&#8221; mysql_escape_string &#8221; function için.</p>
<p>İkinci olarak bilmemiz gereken:</p>
<p><strong>array_combine :</strong> Bunu buradaki yazıdan öğrenebilirsiniz, <a href="http://www.gokalpkuscu.com/adding-two-array-different-array">Buradaki yazımda</a></p>
<p>Evet gerekli olan functionlarımızı öğrendik geriye PHP yeteneğimiz kaldı.</p>
<p>Benim database sınıfım içinden alınmış bir fonksiyon, yapmanız gereken tek şey fonksiyona, table adını ve değerlerinizi göndermeniz burada önemli olan diğer bir noktada gelen veri dizi ile ben mysql&#8217;deki colonları combine ettim yani gönderdiğiniz, <strong>veri sırasını colon sırası ile aynı yapmalısınız.</strong></p>
<pre class="brush:php">

public function insert_data($table,$value = array()){
   try{
     $qColumnNames = $this->query(" SHOW COLUMNS FROM $table ") or die("gok");
      $numColumns = $this->database_num_rows($qColumnNames) or die("gok");
        $x = 0;
          while ($x < $numColumns)
          {
           $colname = mysql_fetch_row($qColumnNames) or die("gok");
           $col[$x] = $colname[0];
           $x++;
          }
           $value = array_combine($col, $value);
          $sql =  sprintf('INSERT INTO %s (%s) VALUES ("%s")', $table,
                implode(', ', array_map('mysql_escape_string', array_keys($value))),
                  implode('", "',array_map('mysql_escape_string', $value)));

            echo $sql;
        }
      catch (exception $e){
      die("{$e->getMessage()}");
    }
 }

//OUT: INSERT INTO haber (id, title) VALUES ("1", "gokalp")
</pre>
<p>İşi biraz daha abartacağım sanırım aynı anda farklı tablolara insert çektirmek gibi güzel bir function olucak hızı nasıl etkiler tahmin edemiyorum test etmek gerek <img src='http://www.gokalpkuscu.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.gokalpkuscu.com/phpde-tum-tablolar-icin-ortak-insert-function/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Adding two array &#8211; different array</title>
		<link>http://www.gokalpkuscu.com/adding-two-array-different-array</link>
		<comments>http://www.gokalpkuscu.com/adding-two-array-different-array#comments</comments>
		<pubDate>Sat, 26 Sep 2009 20:03:40 +0000</pubDate>
		<dc:creator>Gökalp Kuşçu</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[$array2)]]></category>
		<category><![CDATA[adding two array]]></category>
		<category><![CDATA[array_combine($array1]]></category>
		<category><![CDATA[array_combine()]]></category>

		<guid isPermaLink="false">http://www.gokalpkuscu.com/?p=284</guid>
		<description><![CDATA[Hi, we have a array , and other array. We want to combine it, for example array(1,2,3,4) &#8211; the other array array(a,b,c,d). we want that 1 show -> a , 2 ->b etc&#8230; Look! we can combine it ! < ?php $array1=array(1,4,5,6); $array2=array(A,K,M,P); $array3= array_combine($array1,$array2); //array3 will be $array3= array( [1]=>A, [4]=>K, [5]=>M, [6]=>P, ) [...]]]></description>
			<content:encoded><![CDATA[<p>Hi, we have a array , and other array. We want to combine it, for example  array(1,2,3,4) &#8211; the other array array(a,b,c,d). we want that 1 show -> a , 2 ->b etc&#8230;</p>
<p>Look! we can combine it ! </p>
<p><span id="more-284"></span></p>
<pre class="brush:php">

< ?php

  $array1=array(1,4,5,6);
  $array2=array(A,K,M,P);
  $array3= array_combine($array1,$array2); 

//array3 will be
 $array3=
   array(
     [1]=>A,
     [4]=>K,
     [5]=>M,
     [6]=>P,
   )

?>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.gokalpkuscu.com/adding-two-array-different-array/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
