<?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; طراحی سایت، ربات تلگرام و راهکارهای هوش مصنوعی | پشتیبانی 24 ساعته | مشاوره رایگان | Piero.ir</title>
	<atom:link href="https://piero.ir/tag/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C/feed/" rel="self" type="application/rss+xml" />
	<link>https://piero.ir</link>
	<description>Piero.ir ارائه‌دهنده طراحی سایت حرفه‌ای، ساخت ربات تلگرام، اتوماسیون n8n، هوش مصنوعی، یادگیری ماشین و راه‌اندازی استارتاپ‌های نوآورانه. راهکارهای اختصاصی و مشتری‌محور برای رشد کسب‌وکار شما.</description>
	<lastBuildDate>Fri, 26 Sep 2025 01:57:05 +0000</lastBuildDate>
	<language>fa-IR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>

<image>
	<url>https://piero.ir/wp-content/uploads/2025/08/logopiero-100x100.png</url>
	<title>آموزش برنامه نویسی &#8211; طراحی سایت، ربات تلگرام و راهکارهای هوش مصنوعی | پشتیبانی 24 ساعته | مشاوره رایگان | Piero.ir</title>
	<link>https://piero.ir</link>
	<width>32</width>
	<height>32</height>
</image> 
        <wp_options>
            <wp_option>
                <name>
                    shopengine_activated_templates                </name>
                <val>
                    a:0:{}                </val>
            </wp_option>
        </wp_options>
        	<item>
		<title>کتاب آموزش کدایگنایتر 3</title>
		<link>https://piero.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1-3/</link>
					<comments>https://piero.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1-3/#comments</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Mon, 02 Jan 2017 05:15:21 +0000</pubDate>
				<category><![CDATA[آموزش پی اچ پی]]></category>
		<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش طراحی سایت]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[دانلود رایگان]]></category>
		<category><![CDATA[سایر آموزشها]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=674</guid>

					<description><![CDATA[کتاب آموزش کدایگنایتر 3 امروزه نیاز به برنامه نویسی جهت ساخت و سفارشی سازی برنامه های کامپیوتری هر روز بیشتر از قبل است . ضمن اینکه هر روز ما بیشتر به سمت اینترنت گرایش پیدا می کنیم و برنامه ها از حالات تکی و یک جا به سمت برنامه های تحت وب می رود  ،که [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>کتاب آموزش کدایگنایتر 3</h1>
<p>امروزه نیاز به برنامه نویسی جهت ساخت و سفارشی سازی برنامه های کامپیوتری هر روز بیشتر از قبل است . ضمن اینکه هر روز ما بیشتر به سمت اینترنت گرایش پیدا می کنیم و برنامه ها از <strong>حالات تکی و یک جا</strong> به سمت ب<strong>رنامه های تحت وب</strong> می رود  ،که دارای مزایای زیادی است از جمله <strong>وابسته نبودن به جا و مکان ، امنیت بالا ، عدم وابستگی به سیستم عامل خاص ، قدرت مانور بالا و &#8230;</strong><br />
ار آن رو بر آوردیم که یکی از قوی ترین <strong>فریم ورک های پی اچ پی</strong> را برای شما آموزش دهیم . اما دو سوال مطرح می شود :</p>
<p><strong>چرا پی اچ پی ؟</strong> نمی توان کدام زبان برنامه نویسی برتر دانست ولی زبان برنامه نویسی پی اچ پی  پر کار برد ترین زبان تحت وب می باشد که سالیان زیاد است که شرکتهای بزرگ از آن استفاده می کنند و چون بازمتن می باشد دارای هزاران فریم ورک ، ویرایشگر و ماژول های رایگان در اینترنت می باشد .(کتاب آموزش کدایگنایتر &#8211; جلد ۱ )</p>
<p><strong>چرا کد ایگنایتر ؟</strong> و باز هم نمی توان گفت کدام فریم ورک قوی تر می باشد ولی کد ایگنایتر در بسیاری از آمارهای اینترنتی در مقام اول و یا دوم قرار دارد و این بخاطر راحتی و قدرت مانور بالای آن می باشد . شما با کد ایگنایتر می توانید برنامه های تحت و یا وب سایتهای پر قدرت بسازید.(کتاب آموزش کدایگنایتر &#8211; جلد ۱ )</p>
<p>مدتها پیش سعی بر آن آوردیم بتوانیم کتاب آموزش کامل کدایگنایتر را در اختیار هم وطنان عزیزمان قرار دهیم ، در حال حاضر این کتاب جلد شماره یک می باشد و هر جلد به صورت دوره ای از مطالب وب سایت پیرو (piero.ir) انتشار می یابد و شما می توانید جدید ترین نکات کد ایگنایتر را در وب سایت ما ببینید و استفاده کنید . همچنین شما نیز می توانید مقالات خود را برای ما ارسال نمایید تا با اسم شما انتشار یابد.<br />
<strong>درصورت بروز مشکل خوشحال می شویم بتوانیم کمکی به شما بکنیم .</strong></p>
<p>&nbsp;</p>
<p style="text-align: center;"><span style="color: #ff0000;"><strong>امیدوارم بتوانم به همراه تیم وفادارم خدمتی به شما دوستان کرده باشم – پیروز جنابی (مدیر و موسس پیرو)</strong></span></p>
<h3><a href="https://ketabesabz.com/book/29698/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%DA%A9%D8%AA%D8%A7%D8%A8-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B3%D8%B1%DB%8C%D8%B9-%DA%A9%D8%AF-%D8%A7%DB%8C%DA%AF%D9%86%D8%A7%DB%8C%D8%AA%D8%B1" target="_blank" rel="noopener">دانلود کتاب آموزش کدایگنایتر۳</a></h3>
<p>&nbsp;</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1-3/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>بهترین زبان برنامه نویسی ۲۰۱۶</title>
		<link>https://piero.ir/%d8%a8%d9%87%d8%aa%d8%b1%db%8c%d9%86-%d8%b2%d8%a8%d8%a7%d9%86-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-%db%b2%db%b0%db%b1%db%b6/</link>
					<comments>https://piero.ir/%d8%a8%d9%87%d8%aa%d8%b1%db%8c%d9%86-%d8%b2%d8%a8%d8%a7%d9%86-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-%db%b2%db%b0%db%b1%db%b6/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Sun, 25 Dec 2016 08:30:10 +0000</pubDate>
				<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[دسته‌بندی نشده]]></category>
		<category><![CDATA[سایر آموزشها]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=614</guid>

					<description><![CDATA[بهترین زبان برنامه نویسی۲۰۱۶ چیست؟ با سلام در این مقاله به بهترین زبان برنامه نویسی ۲۰۱۶ بر اساس چندین آمار معتبر و ذکر منابع می پردازیم. TIOBE Index,DEC  ۲۰۱۶ این مرجع می تواند به صورت لحظه ای آمار بهترین زبان برنامه نویسی را به شما بدهد که شما می توانید در لینک زیر مشاهده نمایید. [&#8230;]]]></description>
										<content:encoded><![CDATA[<h2>بهترین زبان برنامه نویسی۲۰۱۶ چیست؟</h2>
<p style="text-align: justify;">با سلام در این مقاله به بهترین زبان برنامه نویسی ۲۰۱۶ بر اساس چندین آمار معتبر و ذکر منابع می پردازیم.</p>
<h2>TIOBE Index,DEC  ۲۰۱۶</h2>
<p style="text-align: justify;">این مرجع می تواند به صورت لحظه ای آمار بهترین زبان برنامه نویسی را به شما بدهد که شما می توانید در لینک زیر مشاهده نمایید.</p>
<p style="text-align: center;"><strong><a href="http://www.tiobe.com/tiobe-index//" target="_blank" rel="noopener">مشاهده آمار هم اکنون بهترین زبان برنامه نویسی </a></strong></p>
<table class="table table-striped table-top20 aligncenter" style="height: 517px; width: 730px;">
<thead>
<tr>
<th style="width: 99px;">Dec 2016</th>
<th style="width: 99px;">Dec 2015</th>
<th style="width: 78.7333px;">Change</th>
<th style="width: 245.267px;">Programming Language</th>
<th style="width: 87px;">Ratings</th>
<th style="width: 79px;">Change</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 99px;">۱</td>
<td style="width: 99px;">۱</td>
<td style="width: 78.7333px;"></td>
<td style="width: 245.267px;">Java</td>
<td style="width: 87px;">۱۷٫۸۵۶%</td>
<td style="width: 79px;">-۳٫۱۲%</td>
</tr>
<tr>
<td style="width: 99px;">۲</td>
<td style="width: 99px;">۲</td>
<td style="width: 78.7333px;"></td>
<td style="width: 245.267px;">C</td>
<td style="width: 87px;">۸٫۷۲۶%</td>
<td style="width: 79px;">-۷٫۷۳%</td>
</tr>
<tr>
<td style="width: 99px;">۳</td>
<td style="width: 99px;">۳</td>
<td style="width: 78.7333px;"></td>
<td style="width: 245.267px;">C++</td>
<td style="width: 87px;">۵٫۳۳۵%</td>
<td style="width: 79px;">-۰٫۶۱%</td>
</tr>
<tr>
<td style="width: 99px;">۴</td>
<td style="width: 99px;">۴</td>
<td style="width: 78.7333px;"></td>
<td style="width: 245.267px;">Python</td>
<td style="width: 87px;">۴٫۲۳۹%</td>
<td style="width: 79px;">-۰٫۱۹%</td>
</tr>
<tr>
<td style="width: 99px;">۵</td>
<td style="width: 99px;">۷</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/up.png" alt="change" /></td>
<td style="width: 245.267px;">Visual Basic .NET</td>
<td style="width: 87px;">۳٫۳۰۲%</td>
<td style="width: 79px;">+۰٫۹۱%</td>
</tr>
<tr>
<td style="width: 99px;">۶</td>
<td style="width: 99px;">۵</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">C#</td>
<td style="width: 87px;">۳٫۱۷۱%</td>
<td style="width: 79px;">-۰٫۹۴%</td>
</tr>
<tr>
<td style="width: 99px;">۷</td>
<td style="width: 99px;">۶</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">PHP</td>
<td style="width: 87px;">۲٫۹۱۹%</td>
<td style="width: 79px;">+۰٫۱۳%</td>
</tr>
<tr>
<td style="width: 99px;">۸</td>
<td style="width: 99px;">۸</td>
<td style="width: 78.7333px;"></td>
<td style="width: 245.267px;">JavaScript</td>
<td style="width: 87px;">۲٫۸۶۲%</td>
<td style="width: 79px;">+۰٫۵۰%</td>
</tr>
<tr>
<td style="width: 99px;">۹</td>
<td style="width: 99px;">۱۱</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/up.png" alt="change" /></td>
<td style="width: 245.267px;">Assembly language</td>
<td style="width: 87px;">۲٫۵۳۹%</td>
<td style="width: 79px;">+۰٫۶۱%</td>
</tr>
<tr>
<td style="width: 99px;">۱۰</td>
<td style="width: 99px;">۹</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">Perl</td>
<td style="width: 87px;">۲٫۳۳۸%</td>
<td style="width: 79px;">+۰٫۱۳%</td>
</tr>
<tr>
<td style="width: 99px;">۱۱</td>
<td style="width: 99px;">۱۵</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/upup.png" alt="change" /></td>
<td style="width: 245.267px;">Objective-C</td>
<td style="width: 87px;">۲٫۳۲۵%</td>
<td style="width: 79px;">+۰٫۹۷%</td>
</tr>
<tr>
<td style="width: 99px;">۱۲</td>
<td style="width: 99px;">۱۰</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">Ruby</td>
<td style="width: 87px;">۲٫۱۴۷%</td>
<td style="width: 79px;">+۰٫۰۹%</td>
</tr>
<tr>
<td style="width: 99px;">۱۳</td>
<td style="width: 99px;">۱۴</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/up.png" alt="change" /></td>
<td style="width: 245.267px;">Swift</td>
<td style="width: 87px;">۲٫۱۳۴%</td>
<td style="width: 79px;">+۰٫۷۳%</td>
</tr>
<tr>
<td style="width: 99px;">۱۴</td>
<td style="width: 99px;">۱۲</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">Visual Basic</td>
<td style="width: 87px;">۱٫۹۶۷%</td>
<td style="width: 79px;">+۰٫۳۱%</td>
</tr>
<tr>
<td style="width: 99px;">۱۵</td>
<td style="width: 99px;">۱۳</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">Delphi/Object Pascal</td>
<td style="width: 87px;">۱٫۹۵۰%</td>
<td style="width: 79px;">+۰٫۳۱%</td>
</tr>
<tr>
<td style="width: 99px;">۱۶</td>
<td style="width: 99px;">۵۰</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/upup.png" alt="change" /></td>
<td style="width: 245.267px;">Go</td>
<td style="width: 87px;">۱٫۹۳۹%</td>
<td style="width: 79px;">+۱٫۷۴%</td>
</tr>
<tr>
<td style="width: 99px;">۱۷</td>
<td style="width: 99px;">۱۸</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/up.png" alt="change" /></td>
<td style="width: 245.267px;">R</td>
<td style="width: 87px;">۱٫۸۲۶%</td>
<td style="width: 79px;">+۰٫۷۰%</td>
</tr>
<tr>
<td style="width: 99px;">۱۸</td>
<td style="width: 99px;">۱۶</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">MATLAB</td>
<td style="width: 87px;">۱٫۸۱۸%</td>
<td style="width: 79px;">+۰٫۶۵%</td>
</tr>
<tr>
<td style="width: 99px;">۱۹</td>
<td style="width: 99px;">۲۴</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/upup.png" alt="change" /></td>
<td style="width: 245.267px;">Groovy</td>
<td style="width: 87px;">۱٫۷۸۶%</td>
<td style="width: 79px;">+۱٫۰۱%</td>
</tr>
<tr>
<td style="width: 99px;">۲۰</td>
<td style="width: 99px;">۱۹</td>
<td style="width: 78.7333px;"><img decoding="async" src="http://www.tiobe.com/images/down.png" alt="change" /></td>
<td style="width: 245.267px;">PL/SQL</td>
<td style="width: 87px;">۱٫۴۹۵%</td>
<td style="width: 79px;">+۰٫۳۹%</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h1>IEEE</h1>
<p>طبق استاندارد ieee بهترین زبان برنامه نویسی ۲۰۱۶ به ترتیب زیر می باشند.</p>
<p><img decoding="async" class="aligncenter zoooom" src="http://spectrum.ieee.org/image/Mjc5MjI0Ng.png" /></p>
<h2 style="text-align: center;"></h2>
<h1>codingdojo</h1>
<p>براساس وب سایت codingdojo ببهترین زبان برنامه نویسی ۲۰۱۶ طبق تصویر زیر است .</p>
<p><img decoding="async" class="aligncenter" src="http://www.codingdojo.com/blog/wp-content/uploads/Programming-Languages-for-2016_graph.jpg" /></p>
<h2 style="text-align: center;"><a href="http://www.codingdojo.com/blog/9-most-in-demand-programming-languages-of-2016/" target="_blank" rel="noopener">مشاهده بهترین زبان برنامه نویسی ۲۰۱۶ در وب سایت</a>codingdojo</h2>
<h1>بهترین زبان برنامه نویسی برای من چیست ؟</h1>
<p style="text-align: justify;">سوالی که شاید بارها از شما پرسیده شده است و یا شما از افراد مختلف پرسیده اید . جواب سوال شما بسته به کاری که می خواهید انجام دهید دارد و شما می توانید بسته به کاری که می خواهید انجام دهید به شما به همراه مثال نشان می دهد.</p>
<h3 style="text-align: center;"><a href="http://www.bestprogramminglanguagefor.me" target="_blank" rel="noopener">http://www.bestprogramminglanguagefor.me</a></h3>
<h1 style="text-align: right;">نتیجه بهترین زبان برنامه نویسی ۲۰۱۶</h1>
<p style="text-align: justify;">درست است که آمار های بالا طبق آمار برترین زبانها را به نشان می دهند ولی برترین زبان برنامه نویسی وجود ندارد و بستگی به کار مورد نظر و برنامه نویس دارد . من به شما پیشنهاد می کنم زبان برنامه نویسی را حرفه ای بیاموزید و سعی کنید فقط ذهن برنامه نویسی داشته باشید در واقع بدانید که در صورت مواجه شدن با مشکلی راهکار رسیدن به نتیجه چیست و اینکه با چه زبانی پیاده سازی نمایید فرقی ندارد چون ساختار برنامه نویسی بیشتر زبانهای برنامه نویسی شبیه هم هستند.</p>
<p style="text-align: justify;">در صورتی که می خواهید یک زبان برنامه نویسی را شروه کنید ابتدا به زبانهای مدل سازی و تحلیل مسلط شوید و هر کاری را ابتدا روی کاغذ پیاده سازی نمایید  و در ادامه یک زبان برنامه نویسی را به صورت حرفه ای یاد بگیرید در صورتی که می خواهید تحت وب کار کنید پیشنهاد ما php است ودر غیر این صورت پیشنهاد می شود جاوا را یاد بگیرید . یادگیری زبانهای زیر در همه جا کاربرد دارد پس پیشنهاد می شود بزودی آنها را یاد بگیرید.</p>
<h3></h3>
<h3>sql</h3>
<p style="text-align: justify;"><strong>اس کیو ال</strong> = یک زبان ارتباط با بانکهای اطلاعاتی می باشد و در تمامی برنامه ها از ان استفاده می شود .</p>
<pre class="lang:default decode:true ">SELECT * FROM Customers
WHERE Country='Germany'
AND City='Berlin';</pre>
<p>&nbsp;</p>
<h3>HTML</h3>
<p style="text-align: justify;"><strong>اچ تی ام ال</strong> = یک زبان نمایشی است در بیشتر برنامه ها استفاده می شود و در تمامی سیستم عامل ها حتی موبایل مورد استفاده قرار می گیرد طبعیتا در تمامی زبانهای برنامه نویسی مخصوصا برنامه های تحت وب که حتما از این زبان برای ساختار نمایشی از آن استفاده میکند همچنین جدیدا در html5 امکان ساخت بازی و برنامه های موبایل را نیز بوجود آورده است.</p>
<pre class="lang:default decode:true "> &lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Page Title&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;

&lt;h1&gt;This is a Heading&lt;/h1&gt;
&lt;p&gt;This is a paragraph.&lt;/p&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<h3></h3>
<h3>JAVA SCRIPT</h3>
<p style="text-align: justify;">جاوا اسکریپت = این یک زبان برنامه نویسی برای اچ تی ام ال می باشد بسیار راحت و دارای فریم ورکهای زیادی از جمله jquery و anguarjs و &#8230; دارد .  در آینده استفاده نکردن از جاوا اسکریپت در برنامه ها غیر ممکن است .</p>
<pre class="lang:default decode:true ">document.getElementById("demo").innerHTML = "Hello JavaScript";</pre>
<p>&nbsp;</p>
<h3>CSS</h3>
<p style="text-align: justify;"><strong>سی اس اس</strong> = یک زبان ساختاری و آبشاری جهت تغییر ظاهری المنتهای اچ تی ام ال است و هنگامی که اچ تی امال استفاده شود غیر ممکن است از css استفاده نشود.</p>
<pre class="lang:default decode:true ">body {
    background-color: lightblue;
}

h1 {
    color: white;
    text-align: center;
}

p {
    font-family: verdana;
    font-size: 20px;
}</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3>XML</h3>
<p style="text-align: justify;"><strong>اکس ام ال</strong> =  یک زبان ساختاری است که بیشتر برای ذخیره و ارتباط برنامه ها استفاده می شود .</p>
<pre class="lang:default decode:true "> &lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;note&gt;
  &lt;to&gt;Tove&lt;/to&gt;
  &lt;from&gt;Jani&lt;/from&gt;
  &lt;heading&gt;Reminder&lt;/heading&gt;
  &lt;body&gt;Don't forget me this weekend!&lt;/body&gt;
&lt;/note&gt;</pre>
<p>&nbsp;</p>
<h2></h2>
<h2><strong>PHP</strong></h2>
<p style="text-align: justify;">پی اچ پی :یک زبان برنامه نویسی تحت سرور می باشد که با تمامی زبانهای بالا ارتباط برقرار می کند . این زبان رایگان است همچنین بازمتن در واقع برنامه در زمان اجرا کامپایل می شود . این زبان سرعت و قدرت بالایی دارد و به صورت خیلی پهناور استفاده می شود و دارای برنامه های آماده زیادی است که شما می توانید آنها را ارتقا بدهید و همچنین بدلیل استفاده wordpress و سیستمهای مدیریت های محتوای دیگر از php می توان گفت این زبان فرا گیر ترین زبان تحت وب دانست .</p>
<pre class="lang:default decode:true ">&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;body&gt;

&lt;?php
echo "My first PHP script!";
?&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p>&nbsp;</p>
<p>امیدواریم توانسته باشیم با این مقاله کمکی به شما کرده باشیم</p>
<h1 style="text-align: center;"><span style="color: #3366ff;">جهت مشاهده جدید ترین اخبار به کانال هنر کدینگ تلگرام بپیوندید.</span></h1>
<h1 style="text-align: center;"><span style="color: #3366ff;"> <a href="https://telegram.me/itnew4u" target="_blank" rel="noopener">عضویت در کانال هنر کدینگ itnew4u@</a></span></h1>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%a8%d9%87%d8%aa%d8%b1%db%8c%d9%86-%d8%b2%d8%a8%d8%a7%d9%86-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-%db%b2%db%b0%db%b1%db%b6/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>تبدیل اعداد به حروف در php و کدایگنایتر</title>
		<link>https://piero.ir/%d8%aa%d8%a8%d8%af%db%8c%d9%84-%d8%a7%d8%b9%d8%af%d8%a7%d8%af-%d8%ad%d8%b1%d9%88%d9%81-php/</link>
					<comments>https://piero.ir/%d8%aa%d8%a8%d8%af%db%8c%d9%84-%d8%a7%d8%b9%d8%af%d8%a7%d8%af-%d8%ad%d8%b1%d9%88%d9%81-php/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Wed, 09 Nov 2016 13:59:12 +0000</pubDate>
				<category><![CDATA[آموزش پی اچ پی]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[افزونه های کد ایگنایتر]]></category>
		<category><![CDATA[برنامه های پی اچ پی]]></category>
		<category><![CDATA[سایر آموزشها]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<category><![CDATA[اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[سورس پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=535</guid>

					<description><![CDATA[تبدیل اعداد به حروف در php و کدایگنایتر از قدیم تا به حال یکی از خواسته هایی بوده که در بیشتر برنامه ها مورد استفاده قرار میگیرد به همین دلیل این افزونه ساده و کاربردی را برای شما انتشاد دادیم . ما در اینجا ابتدا به کد php آن می پردازیم و بعد آن را [&#8230;]]]></description>
										<content:encoded><![CDATA[<h5 style="text-align: justify;">تبدیل اعداد به حروف در php و کدایگنایتر از قدیم تا به حال یکی از خواسته هایی بوده که در بیشتر برنامه ها مورد استفاده قرار میگیرد به همین دلیل این افزونه ساده و کاربردی را برای شما انتشاد دادیم . ما در اینجا ابتدا به کد php آن می پردازیم و بعد آن را به صورت کتابخانه ای در کد ایگنایتر نیز معرفای می کنیم . توجه داشته باشید ما تبدیل اعداد به حروف در php و کدایگنایتر هم به زبان فارسی هم به زبان انگلیسی بررسی می کنیم.این الگوریتم مناسب برای استفاده در برنامه های حسابداری و برنامه های عملیاتی میباشد.</h5>
<p>&nbsp;</p>
<h2>تبدیل اعداد به حروف در php و کدایگنایتر به زبان فارسی</h2>
<p>این کد کامل تبدیل اعداد به حروف در php و کدایگنایتر  می باشد که به صورت php می باشد و شما به راحتی می توانید استفاده نمایید کافی است تابع زیر را در هر جایی که می خواهید استفاده نمایید.</p>
<pre class="lang:default decode:true ">public function convert_number($number) {

        $ones = array("", "یک",'دو&amp;nbsp;', "سه", "چهار", "پنج", "شش", "هفت", "هشت", "نه", "ده", "یازده", "دوازده", "سیزده", "چهارده", "پانزده", "شانزده", "هفده", "هجده", "نونزده");
        $tens = array("", "", "بیست", "سی", "چهل", "پنجاه", "شصت", "هفتاد", "هشتاد", "نود");
        $tows = array("", "صد", "دویست", "سیصد", "چهار صد", "پانصد", "ششصد", "هفتصد", "هشت صد", "نه صد");


        if (($number &lt; 0) || ($number &gt; 999999999)) {
			throw new Exception("Number is out of range");
		}
		$Gn = floor($number / 1000000);
		/* Millions (giga) */
		$number -= $Gn * 1000000;
		$kn = floor($number / 1000);
		/* Thousands (kilo) */
		$number -= $kn * 1000;
		$Hn = floor($number / 100);
		/* Hundreds (hecto) */
		$number -= $Hn * 100;
		$Dn = floor($number / 10);
		/* Tens (deca) */
		$n = $number % 10;
		/* Ones */
		$res = "";
		if ($Gn) {
			$res .= $this-&gt;convert_number($Gn) .  " میلیون و ";
		}
		if ($kn) {
			$res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($kn) . " هزار و";
		}
		if ($Hn) {
			$res .= (empty($res) ? "" : " ") . $tows[$Hn] . " و ";
		}
		if ($Dn || $n) {
			if (!empty($res)) {
				$res .= "";
			}
			if ($Dn &lt; 2) {
				$res .= $ones[$Dn * 10 + $n];
			} else {
				$res .= $tens[$Dn];
				if ($n) {
					$res .= " و " . $ones[$n];
				}
			}
		}
		if (empty($res)) {
			$res = "صفر";
		}
		$res=rtrim($res," و");
		return $res;
	}</pre>
<h4></h4>
<h4>توضیح کد تبدیل اعداد به حروف در php و کدایگنایتر : این یک تابع بازگشتی می باشد که ابتدا توسط سه آرایه موارد یکان و دهگان و صدگان را معرفی می کنیم</h4>
<pre class="lang:default decode:true">        $ones = array("", "یک",'دو&amp;nbsp;', "سه", "چهار", "پنج", "شش", "هفت", "هشت", "نه", "ده", "یازده", "دوازده", "سیزده", "چهارده", "پانزده", "شانزده", "هفده", "هجده", "نونزده");
        $tens = array("", "", "بیست", "سی", "چهل", "پنجاه", "شصت", "هفتاد", "هشتاد", "نود");
        $tows = array("", "صد", "دویست", "سیصد", "چهار صد", "پانصد", "ششصد", "هفتصد", "هشت صد", "نه صد");

</pre>
<p>در گام بعدی ما حداکثر و حدا قل برای کدمان قرار می دهیم :</p>
<pre class="">      if (($number &lt; 0) || ($number &gt; 999999999)) {
   throw new Exception("Number is out of range");
}</pre>
<p>و عملیات بازگشت پذیر برای محاسبه</p>
<pre class="">$Gn = floor($number / 1000000);
/* Millions (giga) */
$number -= $Gn * 1000000;
$kn = floor($number / 1000);
/* Thousands (kilo) */تبدیل اعداد به حروف در php و کدایگنایتر
$number -= $kn * 1000;
$Hn = floor($number / 100);
/* Hundreds (hecto) */
$number -= $Hn * 100;
$Dn = floor($number / 10);
/* Tens (deca) */
$n = $number % 10;
/* Ones */</pre>
<p>و در نهایت رشته کارکتر حروف را می سازیم و بازگشت می دهیم.</p>
<pre class="">$res = "";
if ($Gn) {
   $res .= $this-&gt;convert_number($Gn) .  " میلیون و ";
}
if ($kn) {
   $res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($kn) . " هزار و";
}
if ($Hn) {
   $res .= (empty($res) ? "" : " ") . $tows[$Hn] . " و ";
}
if ($Dn || $n) {
   if (!empty($res)) {
      $res .= "";
   }
   if ($Dn &lt; 2) {
      $res .= $ones[$Dn * 10 + $n];
   } else {
      $res .= $tens[$Dn];
      if ($n) {
         $res .= " و " . $ones[$n];
      }
   }
}
if (empty($res)) {
   $res = "صفر";
}
$res=rtrim($res," و");
return $res;</pre>
<p>&nbsp;</p>
<h2>تبدیل اعداد به حروف در php و کدایگنایتر به زبان انگلیسی</h2>
<pre class="">public function convert_number($number) {
   if (($number &lt; 0) || ($number &gt; 999999999)) {
      throw new Exception("Number is out of range");
   }
   $Gn = floor($number / 1000000);
   /* Millions (giga) */
   $number -= $Gn * 1000000;
   $kn = floor($number / 1000);
   /* Thousands (kilo) */
   $number -= $kn * 1000;
   $Hn = floor($number / 100);
   /* Hundreds (hecto) */
   $number -= $Hn * 100;
   $Dn = floor($number / 10);
   /* Tens (deca) */
   $n = $number % 10;
   /* Ones */
   $res = "";
   if ($Gn) {
      $res .= $this-&gt;convert_number($Gn) .  "Million";
   }
   if ($kn) {
      $res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($kn) . " Thousand";
   }
   if ($Hn) {
      $res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($Hn) . " Hundred";
   }
   $ones = array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eightteen", "Nineteen");
   $tens = array("", "", "Twenty", "Thirty", "Fourty", "Fifty", "Sixty", "Seventy", "Eigthy", "Ninety");
   if ($Dn || $n) {
      if (!empty($res)) {
         $res .= " and ";
      }
      if ($Dn &lt; 2) {
         $res .= $ones[$Dn * 10 + $n];
      } else {
         $res .= $tens[$Dn];
         if ($n) {
            $res .= "" . $ones[$n];
         }
      }
   }
   if (empty($res)) {
      $res = "zero";
   }
   return $res;
}</pre>
<p>&nbsp;</p>
<h2>تبدیل اعداد به حروف در  کدایگنایتر</h2>
<p>به منظور استفاده در کد ایگنایتر کافی است که کد بالا را در یک لایبرری کد ایگنایتر لود کنیم در واقع کد را به صورت زیر در پوشه library ساخته و هر جایی که نیاز داشتیم از آن استفاده میکنیم پیشنهاد میکنیم حتما مطلب آموزش کتابخانه ها را در کد ایگنایتر مطالعه نمایید.</p>
<p>[irp posts=&#8221;432&#8243; name=&#8221;کتابخانه ها (librarys) در کد ایگنایتر&#8221;]</p>
<pre class="">&lt;?php
if (!defined('BASEPATH'))
  exit('No direct script access allowed');

class pieronum2word {

   public function convert_number($number) {
      if (($number &lt; 0) || ($number &gt; 999999999)) {
         throw new Exception("Number is out of range");
      }
      $Gn = floor($number / 1000000);
      /* Millions (giga) */
      $number -= $Gn * 1000000;
      $kn = floor($number / 1000);
      /* Thousands (kilo) */
      $number -= $kn * 1000;
      $Hn = floor($number / 100);
      /* Hundreds (hecto) */
      $number -= $Hn * 100;
      $Dn = floor($number / 10);
      /* Tens (deca) */
      $n = $number % 10;
      /* Ones */
      $res = "";
      if ($Gn) {
         $res .= $this-&gt;convert_number($Gn) .  "Million";
      }
      if ($kn) {
         $res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($kn) . " Thousand";
      }
      if ($Hn) {
         $res .= (empty($res) ? "" : " ") .$this-&gt;convert_number($Hn) . " Hundred";
      }
      $ones = array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eightteen", "Nineteen");
      $tens = array("", "", "Twenty", "Thirty", "Fourty", "Fifty", "Sixty", "Seventy", "Eigthy", "Ninety");
      if ($Dn || $n) {
         if (!empty($res)) {
            $res .= " and ";
         }
         if ($Dn &lt; 2) {
            $res .= $ones[$Dn * 10 + $n];
         } else {
            $res .= $tens[$Dn];
            if ($n) {
               $res .= "" . $ones[$n];
            }
         }
      }
      if (empty($res)) {
         $res = "zero";
      }
      return $res;
   }
}
?&gt;</pre>
<p>&nbsp;</p>
<p>و بعد هر جایی خواستیم آن را صدا می زنیم و استفاده می کنیم به صورت زیر</p>
<p>بارگزاری لایبرری تبدیل-اعداد-حروف-php</p>
<pre class="" dir="ltr">$this-&gt;load-&gt;library('pieronum2word');</pre>
<p>استفاده تبدیل-اعداد-حروف-php</p>
<pre class="" dir="ltr">$this-&gt;pieronum2word-&gt;convert_number($all_totalprd)</pre>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%aa%d8%a8%d8%af%db%8c%d9%84-%d8%a7%d8%b9%d8%af%d8%a7%d8%af-%d8%ad%d8%b1%d9%88%d9%81-php/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>انیمیشن در اندروید</title>
		<link>https://piero.ir/%d8%a7%d9%86%db%8c%d9%85%db%8c%d8%b4%d9%86-%d8%af%d8%b1-%d8%a7%d9%86%d8%af%d8%b1%d9%88%db%8c%d8%af/</link>
					<comments>https://piero.ir/%d8%a7%d9%86%db%8c%d9%85%db%8c%d8%b4%d9%86-%d8%af%d8%b1-%d8%a7%d9%86%d8%af%d8%b1%d9%88%db%8c%d8%af/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Tue, 08 Nov 2016 10:10:47 +0000</pubDate>
				<category><![CDATA[آموزش اندروید استدیو]]></category>
		<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[افزونه های اندروید استدیو]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[اسکریپت]]></category>
		<category><![CDATA[اندروید استادیو]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=528</guid>

					<description><![CDATA[آموزش انیمیشن در اندروید استادیو انیمیشن عملیاتهای حرکتی و تغییرات ظاهری را انجام می دهد انیمیشن در اندروید  به راه های مختلفی انجام میشود یکی از ساده ترین و کاربردی ترین آنها tween می باشد که در این مقاله به آن می پردازیم. Tween Animation انیمیشن در اندروید پارامتر هایی مثل زمان شروع ، زمان [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>آموزش انیمیشن در اندروید استادیو</h1>
<h2>انیمیشن عملیاتهای حرکتی و تغییرات ظاهری را انجام می دهد</h2>
<p>انیمیشن در اندروید  به راه های مختلفی انجام میشود یکی از ساده ترین و کاربردی ترین آنها tween می باشد که در این مقاله به آن می پردازیم.</p>
<h2>Tween Animation</h2>
<p>انیمیشن در اندروید پارامتر هایی مثل زمان شروع ، زمان پایان ، مدت زمان ، نوع عملیات و سایر موارد را می گیرد ، اندروید این ویژگی ها را در کلاس Animation فراهم می آورد.</p>
<p>با استفاده از متد loadAnimation() ما انیمیشنها را فراخوانی می کنیم.</p>
<pre class="lang:default decode:true ">Animation animation = AnimationUtils.loadAnimation(getApplicationContext(),
   R.anim.myanimation);</pre>
<p>توجه داشته باشید متد دوم نام فایل انیمیشن می باشد که درون پوشه anim که زیر شاخه res است ایجاد می کنیم و  قرار می دهیم .</p>
<h2>متدهای انیمیشن در اندروید و کاربرد آنها</h2>
<table style="height: 200px; width: 707px; border-color: #696565; background-color: #e8e8e8;" border="1">
<tbody>
<tr>
<td style="width: 43px; text-align: center;">
<h3>ردیف</h3>
</td>
<td style="width: 201px; text-align: center;">
<h3>نام متد</h3>
</td>
<td style="width: 440px; text-align: center;">
<h3>شرح</h3>
</td>
</tr>
<tr>
<td style="width: 43px;">۱</td>
<td dir="ltr" style="width: 201px; text-align: center;"><b>start()</b></td>
<td style="width: 440px;">شروع انیمیشن</td>
</tr>
<tr>
<td style="width: 43px;">۲</td>
<td dir="ltr" style="width: 201px; text-align: center;"><b>setDuration(long duration)</b></td>
<td style="width: 440px;">تنظیم مدت زمان انیمیشن</td>
</tr>
<tr>
<td style="width: 43px;">۳</td>
<td dir="ltr" style="width: 201px; text-align: center;"><strong><b>getDuration()</b></strong></td>
<td style="width: 440px;">متدی مه مدت زمان را بر اساس متد بالا بر می گرداند</td>
</tr>
<tr>
<td style="width: 43px;">۴</td>
<td dir="ltr" style="width: 201px; text-align: center;"><strong><b>end()</b></strong></td>
<td style="width: 440px;">پایان انیمیشن</td>
</tr>
<tr>
<td style="width: 43px;">۵</td>
<td dir="ltr" style="width: 201px; text-align: center;"><strong><b>cancel()</b></strong></td>
<td style="width: 440px;">کنسل کردن انیمیشن</td>
</tr>
</tbody>
</table>
<p>برای اجرای انیمیشن فقط کافی است شی خود را با متد startAnimation() صدا بزنیم.</p>
<pre class="lang:default decode:true ">ImageView image1 = (ImageView)findViewById(R.id.imageView1);
image.startAnimation(animation);</pre>
<h2>مثال انیمیشن در اندروید</h2>
<p>در این مثال به صورت گام به گام یک مثال کاربردی از انیمیشن در اندروید می پردازیم.</p>
<table style="height: 252px; width: 777px; border-color: #6e6e6e; background-color: #c9c9c9;" border="1">
<tbody>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">
<h3>مرحله</h3>
</td>
<td style="width: 717px; height: 18px;">
<h3>توضیح</h3>
</td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۱</td>
<td style="width: 717px; height: 18px;"> ساخت پروژه ای به نام My Application با اسم پکیج com.example.sairamkrishna.myapplication</td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۲</td>
<td style="width: 717px; height: 18px;"> ویرایش src/MainActivity.java به منظور اضافه کردن کدهای انیمیشن</td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۳</td>
<td style="width: 717px; height: 18px;"> ویرایش res/layout/activity_main.xml به منظور اضافه کردن ظاهر دلخواه</td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۴</td>
<td style="width: 717px; height: 18px;"> ساخت یک پوشه جدید به نامanim در res به منظور معرفی انیمیشنها<strong>res/anim</strong></td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۵</td>
<td style="width: 717px; height: 18px;"> کلیک راست برروی anim و ساخت Android XML file</td>
</tr>
<tr style="height: 18px;">
<td style="width: 43px; height: 18px;">۶</td>
<td style="width: 717px; height: 18px;"> ساخت فایل به نام myanimation.xml جهت الگوی انیمیشن</td>
</tr>
<tr style="height: 18.65px;">
<td style="width: 43px; height: 18.65px;">۷</td>
<td style="width: 717px; height: 18.65px;"> در نهایت اجرا و تست</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<h1>کدها ی انیمیشن در اندروید</h1>
<p dir="ltr" style="text-align: center;"><b>MainActivity.java</b></p>
<pre class="lang:default decode:true">package com.example.sairamkrishna.myapplication;


import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import android.widget.Toast;

public class MainActivity extends Activity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
   }

   public void clockwise(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation = AnimationUtils.loadAnimation(getApplicationContext(),
         R.anim.myanimation);
      image.startAnimation(animation);
   }

   public void zoom(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 = AnimationUtils.loadAnimation(getApplicationContext(),
         R.anim.clockwise);
      image.startAnimation(animation1);
   }

   public void fade(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 =
         AnimationUtils.loadAnimation(getApplicationContext(),
            R.anim.fade);
      image.startAnimation(animation1);
   }

   public void blink(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 =
         AnimationUtils.loadAnimation(getApplicationContext(),
            R.anim.blink);
      image.startAnimation(animation1);
   }

   public void move(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 =
         AnimationUtils.loadAnimation(getApplicationContext(), R.anim.move);
      image.startAnimation(animation1);
   }

   public void slide(View view){
      ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 =
         AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide);
      image.startAnimation(animation1);
   }
}</pre>
<p>&nbsp;</p>
<p style="text-align: center;"><b>res/layout/activity_main.xml</b></p>
<pre class="lang:default decode:true ">&lt;RelativeLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"&gt;

   &lt;TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Alert Dialog"
      android:id="@+id/textView"
      android:textSize="35dp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true" /&gt;

   &lt;TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorialspoint"
      android:id="@+id/textView2"
      android:textColor="#ff3eff0f"
      android:textSize="35dp"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true" /&gt;

   &lt;ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:src="@drawable/abc"
      android:layout_below="@+id/textView2"
      android:layout_alignRight="@+id/textView2"
      android:layout_alignEnd="@+id/textView2"
      android:layout_alignLeft="@+id/textView"
      android:layout_alignStart="@+id/textView"/&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="zoom"
      android:id="@+id/button"
      android:layout_below="@+id/imageView"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true"
      android:layout_marginTop="40dp"
      android:onClick="clockwise"/&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="clockwise"
      android:id="@+id/button2"
      android:layout_alignTop="@+id/button"
      android:layout_centerHorizontal="true"
      android:onClick="zoom"/&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="fade"
      android:id="@+id/button3"
      android:layout_alignTop="@+id/button2"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:onClick="fade"/&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="blink"
      android:onClick="blink"
      android:id="@+id/button4"
      android:layout_below="@+id/button"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true" /&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="move"
      android:onClick="move"
      android:id="@+id/button5"
      android:layout_below="@+id/button2"
      android:layout_alignRight="@+id/button2"
      android:layout_alignEnd="@+id/button2"
      android:layout_alignLeft="@+id/button2"
      android:layout_alignStart="@+id/button2" /&gt;

   &lt;Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="slide"
      android:onClick="slide"
      android:id="@+id/button6"
      android:layout_below="@+id/button3"
      android:layout_toRightOf="@+id/textView"
      android:layout_toEndOf="@+id/textView" /&gt;

&lt;/RelativeLayout&gt;</pre>
<p>&nbsp;</p>
<p style="text-align: center;"><b>res/anim/myanimation.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;

   &lt;scale xmlns:android="http://schemas.android.com/apk/res/android"
      android:fromXScale="0.5"
      android:toXScale="3.0"
      android:fromYScale="0.5"
      android:toYScale="3.0"
      android:duration="5000"
      android:pivotX="50%"
      android:pivotY="50%" &gt;
   &lt;/scale&gt;

   &lt;scale xmlns:android="http://schemas.android.com/apk/res/android"
      android:startOffset="5000"
      android:fromXScale="3.0"
      android:toXScale="0.5"
      android:fromYScale="3.0"
      android:toYScale="0.5"
      android:duration="5000"
      android:pivotX="50%"
      android:pivotY="50%" &gt;
   &lt;/scale&gt;

&lt;/set&gt;</pre>
<p style="text-align: center;"><b> انمیشن حالت ساعت </b></p>
<p style="text-align: center;"><b>res/anim/clockwise.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;

   &lt;rotate xmlns:android="http://schemas.android.com/apk/res/android"
      android:fromDegrees="0"
      android:toDegrees="360"
      android:pivotX="50%"
      android:pivotY="50%"
      android:duration="5000" &gt;
   &lt;/rotate&gt;

   &lt;rotate xmlns:android="http://schemas.android.com/apk/res/android"
      android:startOffset="5000"
      android:fromDegrees="360"
      android:toDegrees="0"
      android:pivotX="50%"
      android:pivotY="50%"
      android:duration="5000" &gt;
   &lt;/rotate&gt;

&lt;/set&gt;</pre>
<p style="text-align: center;"><b>  انمیشن مات شونده </b></p>
<p style="text-align: center;"><b>res/anim/fade.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;set xmlns:android="http://schemas.android.com/apk/res/android"
   android:interpolator="@android:anim/accelerate_interpolator" &gt;

   &lt;alpha
      android:fromAlpha="0"
      android:toAlpha="1"
      android:duration="2000" &gt;
   &lt;/alpha&gt;

   &lt;alpha
      android:startOffset="2000"
      android:fromAlpha="1"
      android:toAlpha="0"
      android:duration="2000" &gt;
   &lt;/alpha&gt;

&lt;/set&gt;</pre>
<p style="text-align: center;">انیمیشن چشمک زن<br />
<b>res/anim/blink.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;set xmlns:android="http://schemas.android.com/apk/res/android"&gt;
   &lt;alpha android:fromAlpha="0.0"
      android:toAlpha="1.0"
      android:interpolator="@android:anim/accelerate_interpolator"
      android:duration="600"
      android:repeatMode="reverse"
      android:repeatCount="infinite"/&gt;
&lt;/set&gt;</pre>
<p style="text-align: center;">انیمیشن حرکت</p>
<p style="text-align: center;"><b>res/anim/move.xml</b></p>
<pre class="prettyprint notranslate prettyprinted"><span class="pun">&lt;?</span><span class="pln">xml version</span><span class="pun">=</span><span class="str">"1.0"</span><span class="pln"> encoding</span><span class="pun">=</span><span class="str">"utf-8"</span><span class="pun">?&gt;</span>
<span class="tag">&lt;set</span>
   <span class="atn">xmlns:android</span><span class="pun">=</span><span class="atv">"http://schemas.android.com/apk/res/android"</span>
   <span class="atn">android:interpolator</span><span class="pun">=</span><span class="atv">"@android:anim/linear_interpolator"</span>
   <span class="atn">android:fillAfter</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span>

   <span class="tag">&lt;translate</span>
      <span class="atn">android:fromXDelta</span><span class="pun">=</span><span class="atv">"0%p"</span>
      <span class="atn">android:toXDelta</span><span class="pun">=</span><span class="atv">"75%p"</span>
      <span class="atn">android:duration</span><span class="pun">=</span><span class="atv">"800"</span> <span class="tag">/&gt;</span>
<span class="tag">&lt;/set&gt;

</span></pre>
<p style="text-align: center;">انیمیشن اسلاید</p>
<p style="text-align: center;"><b>res/anim/slide.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;set xmlns:android="http://schemas.android.com/apk/res/android"
   android:fillAfter="true" &gt;

   &lt;scale
      android:duration="500"
      android:fromXScale="1.0"
      android:fromYScale="1.0"
      android:interpolator="@android:anim/linear_interpolator"
      android:toXScale="1.0"
      android:toYScale="0.0" /&gt;
&lt;/set&gt;</pre>
<p style="text-align: center;"><b>AndroidManifest.xml</b></p>
<pre class="lang:default decode:true ">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" &gt;

   &lt;application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" &gt;

      &lt;activity
         android:name="com.example.animation.MainActivity"
         android:label="@string/app_name" &gt;

         &lt;intent-filter&gt;
            &lt;action android:name="android.intent.action.MAIN" /&gt;
            &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
         &lt;/intent-filter&gt;

      &lt;/activity&gt;

   &lt;/application&gt;
&lt;/manifest&gt;</pre>
<p>واکنون نوبت به اجرای برنامه می باشد.</p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/animation.jpg" /></p>
<p>&nbsp;</p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/zoom.jpg" /></p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/slide.jpg" /></p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/move.jpg" /></p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/clockwise.jpg" /></p>
<p><img decoding="async" class="aligncenter" src="https://www.tutorialspoint.com/android/images/fade.jpg" /></p>
<p>با تشکر از اینکه وقتتون را در اختیار ما گزاشتید.</p>
<p>منبع:https://www.tutorialspoint.com</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%a7%d9%86%db%8c%d9%85%db%8c%d8%b4%d9%86-%d8%af%d8%b1-%d8%a7%d9%86%d8%af%d8%b1%d9%88%db%8c%d8%af/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>برخی از خطاهای رایج کد ایگنایتر</title>
		<link>https://piero.ir/%d8%a8%d8%b1%d8%ae%db%8c-%d8%a7%d8%b2-%d8%ae%d8%b7%d8%a7%d9%87%d8%a7%db%8c-%d8%b1%d8%a7%db%8c%d8%ac-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/</link>
					<comments>https://piero.ir/%d8%a8%d8%b1%d8%ae%db%8c-%d8%a7%d8%b2-%d8%ae%d8%b7%d8%a7%d9%87%d8%a7%db%8c-%d8%b1%d8%a7%db%8c%d8%ac-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Thu, 03 Nov 2016 17:02:25 +0000</pubDate>
				<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[سایر آموزشها]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=512</guid>

					<description><![CDATA[حنما تا به حال پیش آمده که به برخی از خطاهای رایج کد ایگنایتر برخورده باشید به همین منظور ما به سراغ یک سری خطاهای رایج در کد ایگنایتر می رویم وآنها را بررسی می کنیم و راهکار حل مشکل را بررسی می کنیم. مشکل The requested URL was not found اولین گام باید شما شناخت [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>حنما تا به حال پیش آمده که به برخی از خطاهای رایج کد ایگنایتر برخورده باشید به همین منظور ما به سراغ یک سری خطاهای رایج در کد ایگنایتر می رویم وآنها را بررسی می کنیم و راهکار حل مشکل را بررسی می کنیم.</p>
<h2>مشکل The requested URL was not found</h2>
<p>اولین گام باید شما شناخت کامل از سرورتان  داشته باشید در واقع باید کد ایگنایتر را طبق ماژول های سیستمتان تنظیم کنید.یکی از این کانفیگها ماژول RewriteEngine می باشد در صورتی که این ماژول فعال می باشد باید فایل .htaccess  خود را به صورت زیر مقدار دهی نمایید .</p>
<p>&nbsp;</p>
<pre class="lang:default decode:true">RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1
</pre>
<p>معمولا در صورت برخود با مشکل The requested URL was not found با تنظیم فایل htaccess به صورت بالا این مشکل حل می شود.</p>
<p>&nbsp;</p>
<h2>عدم بارگزاری فایلهای css و جاوا اسکریپت در کد ایگنایتر</h2>
<p>ابتدا به شما پیشمهاد می شود تمامی فایلهای css و جاوا اسکریپتتان را در به صورت یک پاره ار یک سری فایل متحد بارگزاری نماید به طور مثال در شاخه _ApP_MaIn/views/assets . بعضی اوقات می شود که فایل شما بارگزاری نمی شود و در واقع با خطای عدم دسترسی  (access denied) مواجه می شوید که ابتدا بهتر است دسترسی فایل را بررسی نمایید مخصوصا در سیستم عامل لینوکس حتما چک کنید فایلهای شما قابل دسترسی باشند و درگام بعد در پوشه کلی درواقع جایی که فایلهای جاوا اسکریپت و css می باشد فایل htaccess را ساخته و به صورت زیر مقدار دهی می کنیم.</p>
<pre class="lang:default decode:true ">&lt;IfModule authz_core_module&gt;
    Require all granted
&lt;/IfModule&gt;
&lt;IfModule !authz_core_module&gt;
    Allow from all
&lt;/IfModule&gt;</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h1> داینامیک ساختن مسیریابی برای تمامی هاستها</h1>
<p>یکی از مواردی که معمولا کاربر را درگیر خود می کند در کد ایگنایتر عدم توانایی تشخیص اتوماتیک baseurl() و siteurl() است در واقع شما برای هر جایی که بخواهید از برنامه کدایگنایتر استفاده نمایید نیاز است وارد کد فایل config شوید و baseurl را بسته به هاست و سایت خود تغییر دهید ولی بایک تغییر بسیار راحت می توانید بدون نیاز به تغییری برنامه هایتان را در جاهای مختلف اجرا نمایید .</p>
<p>وارد پوشه config شوید و فایل config.php را تغییر دهید .</p>
<p>انتدا همانگونه که می بینید مقدار base url خالی است ولی ممکن است مقداری ثابت داشته باشد بنابراین خط زیر را با کد اصلاح شده جایگزین می کنیم</p>
<pre class="">//$config['base_url'] = '';
$config['base_url'] = ((isset($_SERVER['HTTPS']) &amp;&amp; $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);</pre>
<p>همانگونه که می بینید خط اول را در حالت توضیح قرار می دهیم مابقی کدها را اضافه می کنیم .</p>
<p>&nbsp;</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%a8%d8%b1%d8%ae%db%8c-%d8%a7%d8%b2-%d8%ae%d8%b7%d8%a7%d9%87%d8%a7%db%8c-%d8%b1%d8%a7%db%8c%d8%ac-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>صفحه بندی (Pagination) در کدایگنایتر</title>
		<link>https://piero.ir/%d8%b5%d9%81%d8%ad%d9%87-%d8%a8%d9%86%d8%af%db%8c-pagination-%d8%af%d8%b1-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/</link>
					<comments>https://piero.ir/%d8%b5%d9%81%d8%ad%d9%87-%d8%a8%d9%86%d8%af%db%8c-pagination-%d8%af%d8%b1-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Sun, 30 Oct 2016 12:46:33 +0000</pubDate>
				<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=501</guid>

					<description><![CDATA[صفحه بندی (Pagination) در کدایگنایتر حتما تا حالا به این برخورد کرده اید که در پایین صفحات سایتهای بزرگ شماره بندی وجود دارد به طور مثال در سایت گوگل بعد از جستجو می بینید شماره هایی وجود دارد که با کلیک کردن بر روی آن به آن صفحه می روید . مزایای این کار زیاد [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>صفحه بندی (Pagination) در کدایگنایتر</p>
<p>حتما تا حالا به این برخورد کرده اید که در پایین صفحات سایتهای بزرگ شماره بندی وجود دارد به طور مثال در سایت گوگل بعد از جستجو می بینید شماره هایی وجود دارد که با کلیک کردن بر روی آن به آن صفحه می روید .</p>
<p>مزایای این کار زیاد است که برخی از ان ها را مورد بررسی قرار می دهیم:</p>
<ol>
<li>بارگزاری سریع صفحات.</li>
<li>کوتاه شدن صفحات</li>
<li>و غیره</li>
</ol>
<p>در این آموزش می پردازیم به ساختن صفحه در کد ایگنایتر.</p>
<h2>مدل صفحه بندی (Pagination) در کدایگنایتر</h2>
<p>ابتدا نیاز داریم به مدلی که کشورها را لیست کند م ومقدار خروجی آن را در نظر بگیرد.</p>
<p>&nbsp;</p>
<pre class="lang:default decode:true">models/countries.php

class Countries extends CI_Model
{
    public function __construct() {
        parent::__construct();
    }

    public function record_count() {
        return $this-&gt;db-&gt;count_all("Country");
    }

    public function fetch_countries($limit, $start) {
        $this-&gt;db-&gt;limit($limit, $start);
        $query = $this-&gt;db-&gt;get("Country");

        if ($query-&gt;num_rows() &gt; 0) {
            foreach ($query-&gt;result() as $row) {
                $data[] = $row;
            }
            return $data;
        }
        return false;
   }
}
</pre>
<p>متد record_count() تعداد کشور ها را بر می گرداند</p>
<p>متد fetch_countries() لیست کشورها را بر میگرداند همانگونه که می بینید دارای در آرگومان است :</p>
<ul>
<li>limit تعداد محدوده جهت تعداد سطرها</li>
<li>start نقطه شروع دریافت اطلاعات</li>
</ul>
<p>همانگونه که می بینید با استفاده از دستور زیر ما با استفاده از اکتیو رکردها محدودیت را اعمال می کنیم.</p>
<p>&nbsp;</p>
<pre class="lang:default decode:true ">$this-&gt;db-&gt;limit($limit, $start);</pre>
<p>&nbsp;</p>
<h2>کنترلرصفحه بندی (Pagination) در کدایگنایتر</h2>
<p>در گام بعدی نیاز داریم به تعریف کنترلر</p>
<p>&nbsp;</p>
<pre class="lang:default decode:true ">controllers/welcome.php


&lt;?php
class Welcome extends CI_Controller
{
    public function __construct() {
        parent:: __construct();
        $this-&gt;load-&gt;helper("url");
        $this-&gt;load-&gt;model("Countries");
        $this-&gt;load-&gt;library("pagination");
    }

    public function example1() {
        $config = array();
        $config["base_url"] = base_url() . "welcome/example1";
        $config["total_rows"] = $this-&gt;Countries-&gt;record_count();
        $config["per_page"] = 20;
        $config["uri_segment"] = 3;

        $this-&gt;pagination-&gt;initialize($config);

        $page = ($this-&gt;uri-&gt;segment(3)) ? $this-&gt;uri-&gt;segment(3) : 0;
        $data["results"] = $this-&gt;Countries-&gt;
            fetch_countries($config["per_page"], $page);
        $data["links"] = $this-&gt;pagination-&gt;create_links();

        $this-&gt;load-&gt;view("example1", $data);
    }
}</pre>
<p>&nbsp;</p>
<p>متد example1 یک سری مقدار دهی های اولیه می کند برای بار گزاری کتابخانه صفحه بندی که در سازنده صدا زده شده است و در نهایت مقدار را به فایل نمایشی ارسال می کنیم.</p>
<p>&nbsp;</p>
<h2>ویو صفحه بندی (Pagination) در کدایگنایتر</h2>
<pre class="lang:default decode:true ">views/welcome_message.php
&lt;body&gt;
&lt;div id="container"&gt;


&lt;h1&gt;Countries&lt;/h1&gt;
&lt;div id="body"&gt;
&lt;?php
foreach($results as $data) {
    echo $data-&gt;Name . " - " . $data-&gt;Continent . "&lt;br&gt;";
}
?&gt;
&lt;p&gt;&lt;?php echo $links; ?&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p class="footer"&gt;Page rendered in &lt;strong&gt;{elapsed_time}&lt;/strong&gt; seconds&lt;/p&gt;
&lt;/div&gt;
&lt;/body&gt;</pre>
<p>ابتدا آرایه را در یک جدول ریخته و با تک کد زیر صفحه بندی را بار گزاری می نماییم.</p>
<pre class="lang:default decode:true ">&lt;?php echo $links; ?&gt;</pre>
<p>&nbsp;</p>
<p>صفحه بندی (Pagination) در کدایگنایتر</p>
<p><img decoding="async" class="aligncenter" src="https://dab1nmslvvntp.cloudfront.net/wp-content/uploads/2012/02/ci-pagination-01.png" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d8%b5%d9%81%d8%ad%d9%87-%d8%a8%d9%86%d8%af%db%8c-pagination-%d8%af%d8%b1-%da%a9%d8%af%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>آموزش ساخت تب در اندروید</title>
		<link>https://piero.ir/tabhost/</link>
					<comments>https://piero.ir/tabhost/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Thu, 27 Oct 2016 19:11:56 +0000</pubDate>
				<category><![CDATA[آموزش اندروید استدیو]]></category>
		<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[افزونه های اندروید استدیو]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[اندروید استادیو]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[جاوا]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=488</guid>

					<description><![CDATA[آموزش ساخت تب در اندروید یکی از ویژگی های برنامه های حرفه ای در اندروید منویی در حالت تب است که می توان با آن ار صفحات بصورت خیلی بهینه استفاده کرد. &#160; برای ساخت تب در اندروید استادیو  از  tabhost استفاده می شود. که با کشیدن و رها کردن آن در صفحه layout ساخته [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>آموزش ساخت تب در اندروید</h1>
<p>یکی از ویژگی های برنامه های حرفه ای در اندروید منویی در حالت تب است که می توان با آن ار صفحات بصورت خیلی بهینه استفاده کرد.</p>
<figure id="attachment_489" aria-describedby="caption-attachment-489" style="width: 280px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-489 size-full" src="http://www.piero.ir/wp-content/uploads/2016/10/tabs.jpg" alt="استفاده از  tabhost" width="280" height="157" /><figcaption id="caption-attachment-489" class="wp-caption-text">استفاده از tabhost</figcaption></figure>
<figure id="attachment_493" aria-describedby="caption-attachment-493" style="width: 168px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="wp-image-493 size-medium" src="http://www.piero.ir/wp-content/uploads/2016/10/screen1-168x300.jpg" alt="استفاده از  tabhost" width="168" height="300" /><figcaption id="caption-attachment-493" class="wp-caption-text">استفاده از tabhost</figcaption></figure>
<p>&nbsp;</p>
<h3>برای ساخت تب در اندروید استادیو  از  tabhost استفاده می شود.</h3>
<p>که با کشیدن و رها کردن آن در صفحه layout ساخته می شود و ترکیب زیر را ذارد.</p>
<pre class="lang:default decode:true">    &lt;TabHost
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/tabHost"
        android:layout_gravity="center_horizontal"
        android:layout_weight="0.03"&gt;

        &lt;LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"&gt;

            &lt;TabWidget
                android:id="@android:id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"&gt;&lt;/TabWidget&gt;

            &lt;FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="match_parent"
                android:layout_height="match_parent"&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;
                    &lt;TextView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:text="@string/formul"
                        android:background="@color/menu4"
                        /&gt;

                &lt;/LinearLayout&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;
                    &lt;TextView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:text="@string/aboutapp"
                        android:background="@color/menu4"
                        /&gt;
                &lt;/LinearLayout&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout3"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;

                    &lt;TextView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:text="@string/best"
                        android:background="@color/menu4"
                        /&gt;
                &lt;/LinearLayout&gt;
            &lt;/FrameLayout&gt;
        &lt;/LinearLayout&gt;
    &lt;/TabHost&gt;</pre>
<p>&nbsp;</p>
<p>توجه داشته باشید شما با linearlayout کار دارید و اجزای صفحات را درون آن می گزارید.</p>
<p>و حالا به سراغ کد آن می رویم که بسیار راحت است.</p>
<pre class="lang:default decode:true ">import android.app.Activity;
import android.os.Bundle;
import android.widget.TabHost;

/**
 * Created by piero on 10/27/16.
 */
public class formul1 extends Activity {

TabHost
    tabHost;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.formule1);

        //معرفی تب هاست
        tabHost = (TabHost) findViewById(R.id.tabHost);
        tabHost.setup();


//افزودن تب ۱
        TabHost.TabSpec spec1=tabHost.newTabSpec("TAB 1");
        spec1.setContent(R.id.linearLayout);
        spec1.setIndicator("Appinapps");

//افزودن تب ۲

        TabHost.TabSpec spec2=tabHost.newTabSpec("TAB 2");
        spec2.setContent(R.id.linearLayout2);
        spec2.setIndicator("google");

//افزودن تب ۳
        TabHost.TabSpec spec3=tabHost.newTabSpec("TAB 3");
        spec3.setContent(R.id.linearLayout3);
        spec3.setIndicator("piero");

//        افزودن تب ها
        tabHost.addTab(spec1);
        tabHost.addTab(spec2);
        tabHost.addTab(spec3);

    }

}
</pre>
<p>&nbsp;</p>
<p>واکنون برنامه شما آمادست.</p>
<p>&nbsp;</p>
<h2>اسکرول شدن محتوا در تب هاست</h2>
<p>به منظور اسکرول شدن کافی است از Scrollview در Linearlayout استفاده نمایید به تزتیب زیر.</p>
<pre class="lang:default decode:true ">                &lt;LinearLayout
                    android:id="@+id/linearLayout3"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;

                    &lt;ScrollView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"&gt;
                        &lt;TextView
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:text="@string/formul"
                            android:background="@color/menu4"
                            /&gt;
                    &lt;/ScrollView&gt;
                &lt;/LinearLayout&gt;</pre>
<p>&nbsp;</p>
<p>در واقع کد شما می شود :</p>
<pre class="lang:default decode:true">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/listbackground"
    android:weightSum="1"
    android:layoutDirection="rtl"
    &gt;
    &lt;RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:background="@color/menu6"

        &gt;
    &lt;TextView
        android:textStyle="bold"
        android:id="@+id/emkanattitle"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="@string/formulmenu1"
        android:gravity="center"
        android:textColor="@color/menutext1"
        android:textSize="25dp"
        android:drawableLeft="@drawable/icon7"
        android:paddingLeft="10dp"
        /&gt;


    &lt;/RelativeLayout&gt;

    &lt;TabHost
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/tabHost"
        android:layout_gravity="center_horizontal"
        android:layout_weight="0.03"&gt;

        &lt;LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"&gt;

            &lt;TabWidget
                android:id="@android:id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"&gt;&lt;/TabWidget&gt;

            &lt;FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="match_parent"
                android:layout_height="match_parent"&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;
                    &lt;ScrollView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"&gt;
                        &lt;TextView
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:text="@string/formul"
                            android:background="@color/menu4"
                            /&gt;
                    &lt;/ScrollView&gt;


                &lt;/LinearLayout&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;
                    &lt;ScrollView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"&gt;
                        &lt;TextView
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:text="@string/formul"
                            android:background="@color/menu4"
                            /&gt;
                    &lt;/ScrollView&gt;
                &lt;/LinearLayout&gt;

                &lt;LinearLayout
                    android:id="@+id/linearLayout3"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical"&gt;

                    &lt;ScrollView
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"&gt;
                        &lt;TextView
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:text="@string/formul"
                            android:background="@color/menu4"
                            /&gt;
                    &lt;/ScrollView&gt;
                &lt;/LinearLayout&gt;
             &lt;/FrameLayout&gt;
        &lt;/LinearLayout&gt;
    &lt;/TabHost&gt;


&lt;/LinearLayout&gt;</pre>
<p>&nbsp;</p>
<h2>حساس شدن به تاچ در آموزش ساخت تب در اندروید</h2>
<p>با این کار ساده جلوه بسیار زیادی به برنامه تان می دهید . کاربر شما با عملیات swip می تواند بین تبها انتقال پیدا کند به طور عامیانه با دست کشیدن رو صفحه تبها عوض می شود.</p>
<p>برای این منظور فقط کافی است کد زیر را اضافه کنید.</p>
<pre class="lang:default decode:true ">//    تغییر در هنگامی که تاچی اتفاق میفتد
    @Override
    public boolean onTouchEvent(MotionEvent touchevent) {
        switch (touchevent.getAction()) {
            // when user first touches the screen to swap
            case MotionEvent.ACTION_DOWN: {
                lastX = touchevent.getX();
//                دریافت آخرین جایگاه تاچ
                break;
            }
            case MotionEvent.ACTION_UP: {
                float currentX = touchevent.getX();

                // if left to right swipe on screen
                if (lastX &lt; currentX) {

                    switchTabs(false);
                }

                // if right to left swipe on screen
                if (lastX &gt; currentX) {
                    switchTabs(true);
                }

                break;
            }
        }
        return false;
    }
//تابع انتقال بین تبها
    public void switchTabs(boolean direction) {
        if (direction) // true = move left
        {
            if (tabHost.getCurrentTab() == 0)
                tabHost.setCurrentTab(tabHost.getTabWidget().getTabCount() - 1);
            else
                tabHost.setCurrentTab(tabHost.getCurrentTab() - 1);
        } else
        // move right
        {
            if (tabHost.getCurrentTab() != (tabHost.getTabWidget()
                    .getTabCount() - 1))
                tabHost.setCurrentTab(tabHost.getCurrentTab() + 1);
            else
                tabHost.setCurrentTab(0);
        }
    }</pre>
<p>&nbsp;</p>
<h2>و در نهایت :</h2>
<pre class="lang:default decode:true">import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.TabHost;

/**
 * Created by piero on 10/27/16.
 */
public class formul1 extends Activity {

TabHost tabHost;
    float lastX;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.formule1);

        //معرفی تب هاست
        tabHost = (TabHost) findViewById(R.id.tabHost);
        tabHost.setup();


//افزودن تب ۱
        TabHost.TabSpec spec1=tabHost.newTabSpec("TAB 1");
        spec1.setContent(R.id.linearLayout);
        spec1.setIndicator("Appinapps");

//افزودن تب ۲

        TabHost.TabSpec spec2=tabHost.newTabSpec("TAB 2");
        spec2.setContent(R.id.linearLayout2);
        spec2.setIndicator("google");

//افزودن تب ۳
        TabHost.TabSpec spec3=tabHost.newTabSpec("TAB 3");
        spec3.setContent(R.id.linearLayout3);
        spec3.setIndicator("piero");

//        افزودن تب ها
        tabHost.addTab(spec1);
        tabHost.addTab(spec2);
        tabHost.addTab(spec3);

    }

//    تغییر در هنگامی که تاچی اتفاق میفتد
    @Override
    public boolean onTouchEvent(MotionEvent touchevent) {
        switch (touchevent.getAction()) {
            // when user first touches the screen to swap
            case MotionEvent.ACTION_DOWN: {
                lastX = touchevent.getX();
//                دریافت آخرین جایگاه تاچ
                break;
            }
            case MotionEvent.ACTION_UP: {
                float currentX = touchevent.getX();

                // if left to right swipe on screen
                if (lastX &lt; currentX) {

                    switchTabs(false);
                }

                // if right to left swipe on screen
                if (lastX &gt; currentX) {
                    switchTabs(true);
                }

                break;
            }
        }
        return false;
    }
//تابع انتقال بین تبها
    public void switchTabs(boolean direction) {
        if (direction) // true = move left
        {
            if (tabHost.getCurrentTab() == 0)
                tabHost.setCurrentTab(tabHost.getTabWidget().getTabCount() - 1);
            else
                tabHost.setCurrentTab(tabHost.getCurrentTab() - 1);
        } else
        // move right
        {
            if (tabHost.getCurrentTab() != (tabHost.getTabWidget()
                    .getTabCount() - 1))
                tabHost.setCurrentTab(tabHost.getCurrentTab() + 1);
            else
                tabHost.setCurrentTab(0);
        }
    }
}
</pre>
<p>آموزش ساخت تب در اندروید</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/tabhost/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>نحوه غیر فعال سازی تولبار بالا در ورد پرس بعد از ورود</title>
		<link>https://piero.ir/%d9%86%d8%ad%d9%88%d9%87-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d8%aa%d9%88%d9%84%d8%a8%d8%a7%d8%b1-%d8%a8%d8%a7%d9%84%d8%a7-%d8%af%d8%b1-%d9%88%d8%b1%d8%af-%d9%be%d8%b1/</link>
					<comments>https://piero.ir/%d9%86%d8%ad%d9%88%d9%87-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d8%aa%d9%88%d9%84%d8%a8%d8%a7%d8%b1-%d8%a8%d8%a7%d9%84%d8%a7-%d8%af%d8%b1-%d9%88%d8%b1%d8%af-%d9%be%d8%b1/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Sun, 23 Oct 2016 09:27:45 +0000</pubDate>
				<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش طراحی سایت]]></category>
		<category><![CDATA[افزونه های ورد پرس]]></category>
		<category><![CDATA[آموز وردپرس]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[اسکریپت]]></category>
		<category><![CDATA[ورد پرس]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=478</guid>

					<description><![CDATA[نحوه غیر فعال سازی تولبار بالا در ورد پرس بعد از ورود نحوه غیر فعال سازی تولبار بالا در ورد پرس بعد از ورود (نوار مشکی رنگ که یک سری امکانات می دهد به کاربر که در قسمت بالا می باشد ) کافی است تکه کد زید را در فایل functions.php در قالب خود بگزارید [&#8230;]]]></description>
										<content:encoded><![CDATA[<h2>نحوه غیر فعال سازی تولبار بالا در ورد پرس بعد از ورود</h2>
<p>نحوه غیر فعال سازی تولبار بالا در ورد پرس بعد از ورود (نوار مشکی رنگ که یک سری امکانات می دهد به کاربر که در قسمت بالا می باشد ) کافی است تکه کد زید را در فایل functions.php در قالب خود بگزارید ترجیحا در انتهای آن بگزارید:</p>
<p>مثلا در آدرس زیر:</p>
<p dir="ltr">wp-content\themes\athena</p>
<pre class="lang:default decode:true ">add_action('after_setup_theme', 'remove_admin_bar');

function remove_admin_bar() {
if (!current_user_can('administrator') &amp;&amp; !is_admin()) {
  show_admin_bar(false);
}
}</pre>
<h3>توضیح کد :</h3>
<ol>
<li>ابتدا اجرای تابع را در دستور العمل برنامه اضافه می کند.</li>
<li>در گام بعدی بررسی می کند اگر مدیر کل نبودید : نمایش نوار مشکی رنگ را غیر فعال می کند.</li>
</ol>
<p>&nbsp;</p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%d9%86%d8%ad%d9%88%d9%87-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d8%aa%d9%88%d9%84%d8%a8%d8%a7%d8%b1-%d8%a8%d8%a7%d9%84%d8%a7-%d8%af%d8%b1-%d9%88%d8%b1%d8%af-%d9%be%d8%b1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ویو (Views) در کد ایگنایتر</title>
		<link>https://piero.ir/codeegniter-views/</link>
					<comments>https://piero.ir/codeegniter-views/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Tue, 18 Oct 2016 08:40:11 +0000</pubDate>
				<category><![CDATA[آموزش پی اچ پی]]></category>
		<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=459</guid>

					<description><![CDATA[ویو (Views) در کد ایگنایتر ویو (Views) در کد ایگنایتر متشکل از فایلهایی می باشد که نمایش را برای کاربران را فراهم می سازد درواقع شما نیاز دارید به نمایش اطلاعات به کاربر مثل سربرگ ، جداول و &#8230; که این کار در فایل های view انجام می شود. توجه داشته باشید که فایلهای view [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>ویو (Views) در کد ایگنایتر</h1>
<p>ویو (Views) در کد ایگنایتر متشکل از فایلهایی می باشد که نمایش را برای کاربران را فراهم می سازد درواقع شما نیاز دارید به نمایش اطلاعات به کاربر مثل سربرگ ، جداول و &#8230; که این کار در فایل های view انجام می شود.</p>
<p>توجه داشته باشید که فایلهای view به تنهایی صدا زده نمی شود و شما می بایست حتما در controller  فایلهای view را صدا بزنید .به همین منظور به شما توصیه می شود مطالب فصل قبل را به خوبی تسلط داشته باشید.</p>
<p>[irp posts=&#8221;443&#8243; name=&#8221;کنترلرها (Controllers) در کد ایگنایتر&#8221;]</p>
<h2>ساخت view</h2>
<p>جهت ساخت view  یک فایل ساده htmlرا در آدرس <em>application/views/</em> بسازید، به طور مثال فایلی با محتوای زیر.</p>
<pre class="lang:default decode:true">&lt;html&gt;
&lt;head&gt;
        &lt;title&gt;My Blog&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
        &lt;h1&gt;
Welcome to my Blog!
&lt;/h1&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<h2>بارگزاری view</h2>
<p>جهت بارگزاری view در controoler کد زیر را فراخوانی می کنیم.</p>
<pre class="lang:default decode:true ">$this-&gt;load-&gt;view('name');</pre>
<p>Name اسم فایل شما می باشد.</p>
<h2>مثال کاربردی ویو (Views) در کد ایگنایتر</h2>
<p>۱-فایل کنترلر با محتوای زیر را در آدرس controller/blog.php می سازیم</p>
<pre class="lang:default decode:true">&lt;?class Blog extends CI_Controller {
         public function index()
       {
           $this-&gt;load-&gt;view('blogview');
 }
}</pre>
<ul>
<li>وحالا فایل view را در آدرس views/blogview.php</li>
<li>آدرس زیر را فراخوانی می کنیم.</li>
</ul>
<p dir="ltr"> example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>blog<strong>/</strong></p>
<h2>بارگزاری چندین فایل view</h2>
<p>برای بارگزاری چندین فایل view  تنها کافی است که کد مربوطه را چندین بار صدا بزنیم .</p>
<pre class="lang:default decode:true">&lt;?php

class Page extends CI_Controller {

     public function index()        {

       $data['page_title'] = 'Your title';

      $this-&gt;load-&gt;view('header');

     $this-&gt;load-&gt;view('menu');

          $this-&gt;load-&gt;view('content', $data);

              $this-&gt;load-&gt;view('footer');        } }</pre>
<p>در مثال بالا توسط آرایه data مقادیری را به فایل content  ارسال کردیم که در آینده به طور کامل شرح می دهسم.</p>
<h2>مرتب سازی فایلهای view با استفاده از پوشه بندی</h2>
<p>همان گونه که در فصل قبلی مرتب سازی را برای فایلهای کنترلر توضیح دادیم برای فایلهای view هم صدق می کند  و شما می توانید همانند دستور زیر استفاده کنید.</p>
<pre class="lang:default decode:true ">$this-&gt;load-&gt;view('directory_name/file_name');</pre>
<h2>ارسال مقادیر به فایلهای view</h2>
<p>و اما مهمترین چیز در این قسمت ارسال مقادیر به فایلهای view می باشد . در واقع شما بعد از انجام عملیاتها میخواهید طلاعاتی را به قسمت VIEW بفرستید برای نمایش به طور مثال می خواهید آرگومانی را که در کنترلر دریافت نموده اید با عدد ۲ جمع کنید و به فایل VIEW برای چاپ بفرستید. شما می بایست فایل کنترلر را همانند زیر بسازید.</p>
<pre class="lang:default decode:true">&lt;?php
 class Page extends CI_Controller {
         public function index($id)
     {
 $data['id'] = $id;
              $this-&gt;load-&gt;view('content', $data);
   }
 }</pre>
<p>همانگونه که می بینید آرایه ای داریم به نام data  و همچنین عنصری به نام id  ، که مقدار را از آرگومانها که به طور کامل در قسمت کنترلرها توضیح داده شده است ، به contentمی فرستیم و شما در فایل view آن را می توانید چاپ کنید.</p>
<pre class="lang:default decode:true">&lt;html&gt;
&lt;body&gt;
        &lt;h1&gt;
&lt;?php echo $id;?&gt;
&lt;/h1&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>توجه داشته باشید شما برای چاپ مقدار می توانید از فرمت کوتاه شده آن استفاده نمایید.</p>
<p dir="ltr">&lt;?=$id?&gt;</p>
<h2>ساخت حلقه در view</h2>
<p>فرض کنید ارایه ای متشکل از مقدارهای مختلف را به فایل view می فرستید و می خواهید چاپ کنید ، شما می بایست حلقه ای در فایل ایجاد کرده و مقادیر را چاپ کنید به مثال زیر توجه نمایید.</p>
<pre class="lang:default decode:true ">&lt;?phpclass Blog extends CI_Controller {

     public function index()        {

              $data['todo_list'] = array('Clean House', 'Call Mom', 'Run Errands');

          $data['title'] = "My Real Title";

        $data['heading'] = "My Real Heading";

               $this-&gt;load-&gt;view('blogview', $data);        }}</pre>
<p>همانگونه که می بینید در فایل کنترلر آرایه data داریم که در آن ،آرایه ای به نام todo_list داریم و آن را به blogview  می فرستیم .</p>
<pre class="lang:default decode:true">&lt;html&gt;
&lt;head&gt;

   &lt;title&gt;&lt;?php echo $title;?&gt;&lt;/title&gt;
   &lt;/head&gt;
   &lt;body&gt;
         &lt;h1&gt;
         &lt;?php echo $heading;?&gt;

&lt;/h1&gt;
  &lt;h3&gt;My Todo List&lt;/h3&gt;
       &lt;ul&gt;

      &lt;?php foreach ($todo_list as $item):?&gt;
             &lt;li&gt;&lt;?php echo $item;?&gt;&lt;/li&gt;

  &lt;?php endforeach;?&gt;
    &lt;/ul&gt;
    &lt;/body&gt;
    &lt;/html&gt;</pre>
<p>همانگونه که می بینید با استفاده از یک حلقه <strong>forech</strong>  مقادیر را چاپ می کنیم.</p>
<h2>خروجی پذیری view</h2>
<p>فکر کنید می خواهید خروجی یک فایل view را داخل متغیری بریزید و چاپ نکنید ، با دستر زیر می توانید این کار را بکنید.</p>
<pre class="lang:default decode:true ">$string = $this-&gt;load-&gt;view('myfile', '', TRUE);</pre>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/codeegniter-views/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>کنترلرها (Controllers) در کد ایگنایتر</title>
		<link>https://piero.ir/%da%a9%d9%86%d8%aa%d8%b1%d9%84%d8%b1%d9%87%d8%a7-controllers-%d8%af%d8%b1-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/</link>
					<comments>https://piero.ir/%da%a9%d9%86%d8%aa%d8%b1%d9%84%d8%b1%d9%87%d8%a7-controllers-%d8%af%d8%b1-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/#respond</comments>
		
		<dc:creator><![CDATA[پیروز جنابی]]></dc:creator>
		<pubDate>Mon, 17 Oct 2016 19:59:32 +0000</pubDate>
				<category><![CDATA[آموزش پی اچ پی]]></category>
		<category><![CDATA[آموزش رایگان]]></category>
		<category><![CDATA[آموزش کد ایگنایتر]]></category>
		<category><![CDATA[codeegniter]]></category>
		<category><![CDATA[آموزش php]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش فریم ورک پی اچ پی]]></category>
		<guid isPermaLink="false">http://www.piero.ir/?p=443</guid>

					<description><![CDATA[کنترلرها (Controllers) در کد ایگنایتر codeigniter جهت ورود به دوره آموزش تصویری کد ایگنایتر کلیک کنید . در ویدیو آموزش زیر controller ها در کد ایگنایتر به صورت کامل به شما آموزش داده می شود. کنترلرها (Controllers)  رابط کاربر با برنامه می باشند و آدرسها را مدیریت میکنند همچنین رابط بین model و view می [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>کنترلرها (Controllers) در کد ایگنایتر codeigniter</h1>
<h2 style="text-align: center;"><a href="http://www.piero.ir/codeigniter/#startlearncodeigniter" target="_blank" rel="noopener" data-wplink-edit="true">جهت ورود به دوره آموزش تصویری کد ایگنایتر کلیک کنید .</a></h2>
<h6 class="tag-cloud-link" style="text-align: center;">در ویدیو آموزش زیر controller ها در کد ایگنایتر به صورت کامل به شما آموزش داده می شود.</h6>
<div id="15424698704312015"><script type="text/JavaScript" src="https://www.aparat.com/embed/EX9rm?data[rnddiv]=15424698704312015&amp;data[responsive]=yes"></script></div>
<p>کنترلرها (Controllers)  رابط کاربر با برنامه می باشند و آدرسها را مدیریت میکنند همچنین رابط بین model و view می باشند .</p>
<p dir="ltr">example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>blog<strong>/</strong></p>
<p>در مثال بالا فایل Blog.php که در پوشه controller قرار دارد را بارگزاری می کند و هچنین تابع index که به صورت پیش فرض می باشد.</p>
<pre class="lang:default decode:true">&lt;?phpclass Blog extends CI_Controller {
         public function index()        {   
             echo 'Hello World!';        
}
}</pre>
<p>در صورتی که شما فایل Blog.php را همانند مثال بالا بسازید و آدرس زبر را بارگزاری نمایید مقدار hello world  چاپ می شود.</p>
<p dir="ltr">example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>blog<strong>/</strong></p>
<p> توجه: نام کنترلرها حتما باید با اسم بزرگ شروع شود ‘B’</p>
<pre class="lang:default decode:true ">&lt;?phpclass Blog extends CI_Controller { }</pre>
<h1>متد ها در کنترلرها (Controllers) در کد ایگنایتر</h1>
<p>همان گونه که در مثال بالا مشاهده نمودید ما کدهایمان را درون تابع index()  نوشته شده درواقع تابع پیش فرض ما برای با رگزاری index می باشد ولی شما قابلیت دارید هر تابعی را درون فایل CONTROLLER بارگزاری نمایید .به مثال زیر توجه نمایید.</p>
<pre class="lang:default decode:true">&lt;?php
class Blog extends CI_Controller {  
       public function index()     
   {    
            echo 'Hello World!';     
   }      

   public function comments()     
   {
                echo 'Look at this!';       

 }
}</pre>
<p>درا ین مثال ما دو تابع داریم به نام های index و comments  برای صدا زدن تابع comments به صورت آدرس زیر تابع comments را بارگزاری می شود.</p>
<p>example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>blog<strong>/</strong>comments<strong>/</strong></p>
<p>با بارگزاری آدرس فوق شما باید متن جدید را مشاهده کنید .&#8221;look at this&#8221;</p>
<h1>ارسال مقدار به توابع و متدها در کنترلرها (Controllers) در کد ایگنایتر</h1>
<p>شما امکان ارسال مقدار به متدها را دارید به طور مثال وقتی بخواهید شناسه ای را به توابعی بفرستید و طبق اطلاعات آن شناسه مطلبی را نشان دهد .</p>
<p>example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>products<strong>/</strong>shoes<strong>/</strong>sandals<strong>/</strong>123</p>
<p>همان گونه که می بینید می خواهیم به تابعی به نام shoes  که کفشها را نشان میدهد ، مقدار sandal و ۱۲۳ را ارسال کنیم.</p>
<pre class="lang:default decode:true">&lt;?php
class Products extends CI_Controller {
         public function shoes($sandals, $id)       
 {
               echo $sandals;                echo $id;        
}
}</pre>
<p>همانگونه که مشاهده میکنید تابع shoes درمتغیر sandal و id را دریافت و چاپ میکند بعد از اجرای برنامه sandal و ۱۲۳ چاپ می شود و درون تابع مقدارهای $sandals و $id  مقدار می گیرند.</p>
<h1>تعریف کنترلر پیش فرض در کنترلرها (Controllers) در کد ایگنایتر</h1>
<p>کنترلر پیش فرض : کنترلی است که در صورتی که ما برنامه را بدون آدرسی صدا بزنیم آن کنترل بارگزاری می شود . که مقدار آن را در فایل  <strong>application/config/routes.php</strong><strong> می توانید تغییر دهید.</strong></p>
<p dir="ltr">$route[&#8216;default_controller&#8217;] <strong>=</strong> &#8216;blog&#8217;;</p>
<p>توجه: در مقدار دهی بالا فقط کافی است کنترلر را بنوسید بدون هیچ آدرس دیگری در صورتی که مقدار تابع را مشخص نکنید تابع index() در آن کنترلر بارگزاری میشود.</p>
<h1>طبقه بندی کنترلرها با استفاده از پوشه بندی</h1>
<p>شما به راحتی می توانید فایلهای کنترلرها را طبقه بندی کنید و آنها را با فولدرها جدا سازی کنید به طور مثال:</p>
<p dir="ltr">application<strong>/</strong>controllers<strong>/</strong>products<strong>/</strong>Shoes<strong>.</strong>php</p>
<p> وبه صورت زیر میتوانید از کنترلر مورد نظر استفاده کنید.</p>
<p dir="ltr">example<strong>.</strong>com<strong>/</strong>index<strong>.</strong>php<strong>/</strong>products<strong>/</strong>shoes<strong>/</strong>show<strong>/</strong>123</p>
<h1>سازنده های کلاس</h1>
<p>هنگامی که شما می خواهید کلاسی سفارشی بسازید و تمامی اجزای کلاس ریشه آنرا بارگزاری نمایید از سازنده ها استفاده می کنیم.</p>
<p dir="ltr"><strong>parent</strong><strong>::</strong>__construct();</p>
<p>در کد ایگنایتر شما کنترلری می سازید و از ریشه ان سازنده می سازید همانند کد زیر بعد از آن شما تمامی کنترلرها را می توانید از آن کنترلر ریشه بگیرید و به این صورت شما می توانید اجزای سفارشی خود را در کلاس ریشه ساخته و هر موقع نیاز داشتید بارگزاری نمایید.</p>
<pre class="lang:default decode:true">&lt;?php
class Blog extends CI_Controller {
         public function __construct()
       {              
  parent::__construct();       
         // Your own constructor code     
   }
}</pre>
<p dir="rtl"> توجه:جهت دریافت لیست نامهای رزرو شده به آدرس زیر مراجعه نمایید</p>
<p dir="ltr"><a href=".http://www.codeigniter.com/user_guide/general/reserved_names.html" target="_blank" rel="noopener">.http://www.codeigniter.com/user_guide/general/reserved_names.html</a></p>

    <div class="xs_social_share_widget xs_share_url after_content 		main_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content">

		
        <ul>
			        </ul>
    </div> 
]]></content:encoded>
					
					<wfw:commentRss>https://piero.ir/%da%a9%d9%86%d8%aa%d8%b1%d9%84%d8%b1%d9%87%d8%a7-controllers-%d8%af%d8%b1-%da%a9%d8%af-%d8%a7%db%8c%da%af%d9%86%d8%a7%db%8c%d8%aa%d8%b1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
