<?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>配列 &#8211; トモデジ  tomodigi.com</title>
	<atom:link href="https://tomodigi.com/tag/%e9%85%8d%e5%88%97/feed/" rel="self" type="application/rss+xml" />
	<link>https://tomodigi.com</link>
	<description>デジタルもアナログも</description>
	<lastBuildDate>Sat, 07 Nov 2015 02:29:42 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>
	<item>
		<title>(PHP) 多次元配列の比較</title>
		<link>https://tomodigi.com/web/php/php-%e5%a4%9a%e6%ac%a1%e5%85%83%e9%85%8d%e5%88%97%e3%81%ae%e6%af%94%e8%bc%83/</link>
					<comments>https://tomodigi.com/web/php/php-%e5%a4%9a%e6%ac%a1%e5%85%83%e9%85%8d%e5%88%97%e3%81%ae%e6%af%94%e8%bc%83/#respond</comments>
		
		<dc:creator><![CDATA[Tomo]]></dc:creator>
		<pubDate>Fri, 12 Jun 2015 19:21:08 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[配列]]></category>
		<guid isPermaLink="false">http://www.tomodigi.com/?p=2431</guid>

					<description><![CDATA[多次元配列の比較のための関数のメモです。 比較は緩やかな比較(==)をしています。 左辺のキーと値で比較しています。左辺にあるものが右辺にあれば一致するとみなし、右辺にのみあるキーと値は無視します。 左辺にのみ存在する値 &#8230; <a href="https://tomodigi.com/web/php/php-%e5%a4%9a%e6%ac%a1%e5%85%83%e9%85%8d%e5%88%97%e3%81%ae%e6%af%94%e8%bc%83/" class="more-link">続きを読む <span class="screen-reader-text">(PHP) 多次元配列の比較</span> <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>多次元配列の比較のための関数のメモです。</p>
<p>比較は緩やかな比較(==)をしています。</p>
<p>左辺のキーと値で比較しています。左辺にあるものが右辺にあれば一致するとみなし、右辺にのみあるキーと値は無視します。<br />
左辺にのみ存在する値は差分として表示します。<br />
過不足無く配列の一致を確認する場合は、面倒ですが、左右入れ替えて実行します。</p>
<pre>
function diffMultiDemenion($arrrayLeft,$arrayRight){
//左辺の内容が右辺に含まれているか
//同一かどうかは左右入れ替えて確認する

//差が無ければfalse
$diff = false;
if (is_array($arrrayLeft)){
	foreach($arrrayLeft as $key =&gt; $item){
		if (is_array($item)){
			//配列なら再帰呼び出し
			$tempDiff = diffMultiDemenion($item,$arrayRight[$key]);
			if ($tempDiff){
				//差が無ければキーを作らない
				$diff[$key] = $tempDiff;
			}
		}else{
			if($item != $arrayRight[$key]){
				//配列[0]に左辺、[1]に右辺の値
				$diff[$key] = array($item,$arrayRight[$key]);
			}
		}
	}
}elseif($arrrayLeft != $arrayRight){
	//配列でなければそのま比較して異なる場合は右辺と左辺を表示
	$diff = array($arrrayLeft,$arrayRight);
}
return($diff);
}

使用例です。

$arrayA['b'] = 1;
$arrayA['c'] = 2;
$arrayA['a']['d'] = 3;
$arrayA['a']['f'] = 4;

$arrayB['b'] = 1;
$arrayB['c'] = 0;
$arrayB['a']['d'] = 3;
$arrayB['a']['f'] = 0;

$diff = diffMultiDemenion($arrayA,$arrayB);
print_r($diff);

その結果です。

Array
(
[c] =&gt; Array
	(
	[0] =&gt; 2
	[1] =&gt; 0
	)
[a] =&gt; Array
	(
	[f] =&gt; Array
		(
		[0] =&gt; 4
		[1] =&gt; 0
		)
	)
)
</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://tomodigi.com/web/php/php-%e5%a4%9a%e6%ac%a1%e5%85%83%e9%85%8d%e5%88%97%e3%81%ae%e6%af%94%e8%bc%83/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>sortの挙動 (PHP)</title>
		<link>https://tomodigi.com/web/sort%e3%81%ae%e6%8c%99%e5%8b%95-php/</link>
					<comments>https://tomodigi.com/web/sort%e3%81%ae%e6%8c%99%e5%8b%95-php/#respond</comments>
		
		<dc:creator><![CDATA[Tomo]]></dc:creator>
		<pubDate>Sat, 21 Nov 2009 14:16:28 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WEB]]></category>
		<category><![CDATA[sort]]></category>
		<category><![CDATA[配列]]></category>
		<guid isPermaLink="false">http://www.tomodigi.com/?p=40</guid>

					<description><![CDATA[配列の並び替えsortを使う際には、データの形式に注意しましょう。2 番目のパラメータの指定によって挙動は下記のように変化します。 SORT_REGULAR 通常通りに項目を比較 SORT_NUMERIC 数値的に項目を &#8230; <a href="https://tomodigi.com/web/sort%e3%81%ae%e6%8c%99%e5%8b%95-php/" class="more-link">続きを読む <span class="screen-reader-text">sortの挙動 (PHP)</span> <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>配列の並び替えsortを使う際には、データの形式に注意しましょう。2 番目のパラメータの指定によって挙動は下記のように変化します。</p>
<ul>
<li>SORT_REGULAR 通常通りに項目を比較</li>
<li>SORT_NUMERIC 数値的に項目を比較</li>
<li>SORT_STRING 文字列として項目を比較</li>
</ul>
<p>文字列として入っていた数値を並び替える場合（たとえば少数など）は明示的にSORT_NUMERICとする必要があります。</p>
<pre>sort($array,SORT_NUMERIC)</pre>
<p>このようにして数値として並び替えます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://tomodigi.com/web/sort%e3%81%ae%e6%8c%99%e5%8b%95-php/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>getやpostで受け取った値を表示 (PHP)</title>
		<link>https://tomodigi.com/web/get%e3%82%84post%e3%81%a7%e5%8f%97%e3%81%91%e5%8f%96%e3%81%a3%e3%81%9f%e5%80%a4%e3%82%92%e8%a1%a8%e7%a4%ba/</link>
					<comments>https://tomodigi.com/web/get%e3%82%84post%e3%81%a7%e5%8f%97%e3%81%91%e5%8f%96%e3%81%a3%e3%81%9f%e5%80%a4%e3%82%92%e8%a1%a8%e7%a4%ba/#comments</comments>
		
		<dc:creator><![CDATA[Tomo]]></dc:creator>
		<pubDate>Sun, 17 May 2009 14:20:07 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WEB]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[print_r]]></category>
		<category><![CDATA[デバッグ]]></category>
		<category><![CDATA[配列]]></category>
		<guid isPermaLink="false">http://www.tomodigi.com/?p=34</guid>

					<description><![CDATA[formからpostまたはgetで送られた値をデバッグ中などに参照したいときは&#60;pre&#62;タグとprint_rを使うと見やすく表示されます。 &#60;?php print"&#60;pre&#62;"; print &#8230; <a href="https://tomodigi.com/web/get%e3%82%84post%e3%81%a7%e5%8f%97%e3%81%91%e5%8f%96%e3%81%a3%e3%81%9f%e5%80%a4%e3%82%92%e8%a1%a8%e7%a4%ba/" class="more-link">続きを読む <span class="screen-reader-text">getやpostで受け取った値を表示 (PHP)</span> <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>formからpostまたはgetで送られた値をデバッグ中などに参照したいときは&lt;pre&gt;タグとprint_rを使うと見やすく表示されます。</p>
<pre>
&lt;?php
print"&lt;pre&gt;";
print_r($_POST);
print"&lt;/pre&gt;";
?&gt;
</pre>
<p>とすれば、</p>
<pre>
Array
(
[name] =&gt; 名前
[mail] =&gt; メール
)
</pre>
<p>などと表示されます。getやpostのデータだけでなく、配列を表示する際にも便利です。ネスト（入れ子）された状態でもすべて表示されます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://tomodigi.com/web/get%e3%82%84post%e3%81%a7%e5%8f%97%e3%81%91%e5%8f%96%e3%81%a3%e3%81%9f%e5%80%a4%e3%82%92%e8%a1%a8%e7%a4%ba/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
