Hi guys,<br><br>LifeType really is a great service, however, it&#39;s very slow, I like Lifetype and really I wish the best for it and for you guys.<br><br>If you don&#39;t mind, I have some suggestions:<br>1) <span style="color: rgb(204, 0, 0);">
about __autoload</span>: I think it&#39;s a great idea, and it will increase lifetype performance if you use it in a correct way, something like this:
<br><br>&lt;?php<br>$importList = array();<br><br>//This will not load class directly from classes path, just load it when you need it<br>function import($classPath) {<br>&nbsp;&nbsp;&nbsp; global $importList;<br>&nbsp;&nbsp;&nbsp; $classFullPath = APP_PATH.str_replace(&#39;.&#39;, &#39;/&#39;, $classPath);
<br>&nbsp;&nbsp;&nbsp; $className = basename($classFullPath);<br>&nbsp;&nbsp;&nbsp; $importList[$className] = $classFullPath.&#39;.php&#39;;<br>&nbsp;&nbsp;&nbsp; if(!file_exists($importList[$className])) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; throw new Exception(&#39;File Doesn\&#39;t Exists [&#39;.$importList[$className].&#39;]&#39;);
<br>&nbsp;&nbsp;&nbsp; }<br>}<br><br>//Catch unloaded classes<br>function __autoload($className) {<br>&nbsp;&nbsp;&nbsp; global $importList;<br><br>&nbsp;&nbsp;&nbsp; if(isset($importList[$className])) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; include $importList[$className];<br>&nbsp;&nbsp;&nbsp; } else {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; throw new Exception(&quot;Invalid Class Name [$className]&quot;);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; return $className;<br>}<br>?&gt;<br><br>and about load a classes just use it like this<br>import(&#39;class.action.admin.AdminAddPostAction
&#39;);<br><br>and keep your class file name exactly like ClassName.<br><br>2) <span style="color: rgb(204, 0, 0);">using the cache</span>: smarty cache is great, but I think it&#39;s used in a wrong way,<br>in each request, you already load [local files]&nbsp; and plugins and ... , which will not be used if the template is cached. 
<br><br>3) <span style="color: rgb(204, 0, 0);">loading operations[controllers maps]</span>: you can store this array elements in temp file and run a binary search on this array to get incoming operation action.<br><br>Regards,
<br>&nbsp;&nbsp;&nbsp; Ahmad<br><br><div class="gmail_quote">On Nov 9, 2007 1:47 PM, Mark Wu &lt;<a href="mailto:markplace@gmail.com" target="_blank">markplace@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Actually, I saw that post several days ago .....<br><br>I was frustrated when you try to use __autoload :( , it is really makes the<br>LifeType so so slow in windows platform ...because it increse thousands<br>file_exist() execution time.
<br><br>I think we should mix the PHP4 skill in PHP5 implementation at this moment,<br>or it will cause our system to get very bad performance.<br><br>Actually, I really like __get, __set and __call in PHP5, we can use it to
<br>redeuce the complexity of our dbobjects....<br><br>For example, &nbsp;we can add a new property like $description without add new<br>getter and setter method. And we still can use getDescription() method to<br>get property $description &nbsp;... that&#39;s magic function for ...
<br><br>But, you know, it slow ....<br><font color="#888888"><br>Mark<br></font><div><div></div><div><br>&gt; -----Original Message-----<br>&gt; From: <a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank">
plog-svn-bounces@devel.lifetype.net
</a><br>&gt; [mailto:<a href="mailto:plog-svn-bounces@devel.lifetype.net" target="_blank">plog-svn-bounces@devel.lifetype.net</a>] On Behalf Of<br>&gt; Oscar Renalias<br>&gt; Sent: Friday, November 09, 2007 7:35 PM<br>&gt; To: LifeType Developer List
<br>&gt; Subject: [pLog-svn] This is not fair<br>&gt;<br>&gt; It doesn&#39;t help if PHP implements lots of nice OOP features<br>&gt; (that I was planning to use one day, such as Array iterators, &quot;magic&quot;<br>&gt; accessors via __get and __set, and so on) if by using them we
<br>&gt; incur in some pretty annoyingly high performance overheads... See for<br>&gt; yourselves:<br>&gt;<br>&gt; <a href="http://www.garfieldtech.com/blog/magic-benchmarks" target="_blank">http://www.garfieldtech.com/blog/magic-benchmarks
</a><br>&gt;<br>&gt; I just wanted to vent my frustrations about this topic with you... :)<br>&gt;<br>&gt; Oscar<br>&gt; _______________________________________________<br>&gt; pLog-svn mailing list<br>&gt; <a href="mailto:pLog-svn@devel.lifetype.net" target="_blank">

pLog-svn@devel.lifetype.net</a><br>&gt; <a href="http://limedaley.com/mailman/listinfo/plog-svn" target="_blank">http://limedaley.com/mailman/listinfo/plog-svn</a><br><br>_______________________________________________<br>

pLog-svn mailing list<br><a href="mailto:pLog-svn@devel.lifetype.net" target="_blank">pLog-svn@devel.lifetype.net</a><br><a href="http://limedaley.com/mailman/listinfo/plog-svn" target="_blank">http://limedaley.com/mailman/listinfo/plog-svn
</a><br></div></div></blockquote></div><br>