View Single Post
ישן 15-02-09, 22:31   # 11
intercooler3819
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,056

intercooler3819 לא מחובר  

קודם כל נתחיל מזה שאל תסגור תגיות PHP
אין שום הכרח לסגור אותם מכיון שהאינטרפרטר לא צריך אותם והם רק יגרמו לך לתקלות של HEADERS ALREADY SENT אם מישהו הוסיף שם איזה רווחון בסוף הקוד

תתחיל להשתמש בהערות PHPDOC

תתחיל לעבוד עם מחלקות, פריימוורקים, ותעבור כבר לPHP5.. לא ניצלת שום יתרון של PHP5 בקוד שהראת.. תלך הלאה - השפה הרבה יותר עשריה ממה שאתה יודע
למרות שהOBJECT ORIENTED בPHP נוגד הרבה עקרונות של OBJECT ORIENTED אבל זה מה יש

בנוגע לקוד.. אין לי קוד עדכני כי אני כרגע בוינדוס (הMP רץ בלינוקס..) אז הנה משהו שמצאתי מאשכול שלי פה באתר:
PHP קוד:
<?php
    
function job($id = -1)
    {
        
$this->db->select('*')->from('jobs')->where("id"$id);
        
$query $this->db->get();
        
        if (
$query->num_rows() != 1)
        {
            
show_404('job/' $id);
        }
        
        
$ab $query->row();
        
        
$temp $this->load->view('job', array('job' => &$ab), TRUE);
        
        
// get the other jobs
        
$this->db->select('*')->from('jobs')->where('id >'$ab->id)->limit(round($this->perblock 2));
        
$query $this->db->get();
        
$block = array();
        foreach (
$query->result() as $row)
        {
            
$block['job/' $row->id '/' url_title($row->title)] = $row->title;
        }
        
        
$this->db->select('*')->from('jobs')->where('id >', ($ab->id round($this->perblock 2) - 1))->limit(round($this->perblock 2));
        
$query $this->db->get();
        foreach (
$query->result() as $row)
        {
            
$block['job/' $row->id '/' url_title($row->title)] = $row->title;
        }
        
        
$block $this->load->view('block', array('title' => 'עבודות נוספות''items' => $block), TRUE);
        
        
$this->load->view('structure', array('content' => $temp'description' => $ab->title'blocks' => $block));
    }
אתה צריך לשאוף להתחיל לעבוד עם פריימוורק
אין לי ממש המלצה על פרימוורק מסוים אבל אני יתן לך סקירונת זריזה על אלה שהתנסיתי בהם
זנד - כבד ופלצני - אבל יש בו הכל - היתרון הכי חזק שלה זה שאפשר לפרק את המודולים ולהשתמש במודול אחד במקום רבים - החסרון הגדול זה שיש הרבה מה לדעת לפני שאתה מתחיל לתכנת תכלס
CODEIGNITER - פרימוורק קל ומאוד נוח - היכ יעיל שראיתי - עם הרבה פונקציות וממש כולל את הבסיס - זה טוב להתחלה כי הוא ממש קל ללמידה אבל החסרון זה שאין בו הרבה דברים מתקדמים (את הבסיס יש, דברים מתקדמים צריך לבנות לבד) יש לציין שהוא היחיד ברשימה שתומך PHP4 ברמה מלאה נכון לגרסה העכשוית
SYMPHONY - תקנו אותי אם טעיתי בשם - כלי מאוד חזק אבל יש הרבה ללמוד לדעתי
SEAGULL - הרבה מאוד פונקציות אפילו יותר מזנד אבל שוב יש הרבה ללמוד
CAKEPHP - אממ דיי קומבינטורי - יש שם מנגנון BAKE שמזכיר קצת RUBY ON RAILS שמאפשר לך לצייר סכמת מסד נתונים והוא כבר יכתוב לך את המודולים הבסיסים שאתה צריך.. זה חוסך קוד לאללה ואתה יכול תוך 10 דקות כבר לכתוב מערכת שרצה.. החסרון זה שיש גם הרבה מה ללמוד - מבחינת ריצה הוא לא כ'כ כבד אבל לא קל

תתחיל לעבוד עם XML וסוגי אחסון נתונים כמו YAML, JSON, CSV, INI וכו'

XML RPC - תקרא קצת על זה

תלמד בגדול איך עובד כל העניין של הבקשות HTTP - איך הדברים עובדים לעומק.. איך הדברים רצים

תלמד קצת על הסביבת עבודה בכלל - תחליפים לאפאצ'י (LIGHTTPD וכו'), שרתים אחרים וקונפיגורציות אחרות
גם פניה למקורות חיצוניים מתוך PHP ושימוש בPEAR, דוגמא קלאסית לשימוש שיצא לי לעשות - אתה מזין כתובת אתר, PHP פותח פיירפוקס עם אותו אתר ומצלם את המסך ומחזיר לך תמונה של איך הוא נראה בפיירפוקס - לא מסובך ויעיל..

מסדי נתונים אחרים מMYSQL - לדוגמא SQLITE, פוסטגרס וכו' - סוגי אחסון מידע וכו'

CRON JOBS, ביוטיים רגולרים

מנועי חיפוש - SEARCH LUCENE (תריץ חיפוש בגוגל זה במקור כתוב לJAVA אבל זנד כתבו אימפלמנטציה של זה לPHP במודול ZEND_SEARCH_LUCENE אני כמעט בטוח שזה השם)

ייעול מסדי נתונים - יצירת טבלאות RELATIONS, אינדקסים INDEXES, עמודות מפתח ועמודות UNIQUE, שאילתות חיבור ושאיבה, SUB QUERIES, שאילתות עם רגולר אקספרשנס (מתאפשר בMYSQL הכי עדכני עם האופרטור regexp שמקבל בתור אופרנד את הביטוי)

הייתי מציע לך לנסות לעבוד בעיקר עם דברים מוכנים כמו מערכות ניהול טמפלטים - SMARTY וכו', מודולים כמו EASY COMPONENTS, מערכת OPEN SOURCE - ג'ומלה, דרופל, WORDPRESS והלאה (הבנה של כל העניין של HOOKS ואיך להשתמש בהם)


יש עוד כל כך הרבה דברים שאני יכול לכתוב - חבל על הזמן - תתחיל ללמוד וזה יבוא עם הזמן ועם הצורך יותר נכון

בהצלחה לך (:
__________________
  Reply With Quote