Zend Framework – התקנה

מבוא והוראות התקנה והפעלה של Zend Framework הן על חלונות והן על לינוקס.

Zend Framework היא מימוש של MVC בשפת PHP. למי שלא יודע, MVC זו תבנית עיצוב לתוכנות שנוצרה הרבה לפני ה-PHP ויש לה הרבה מימושים בשפות וטכנולוגיות אחרות. פריימוורק זה פשוט אוסף של פונקציות וקלאסים שמשתמשים בהן שוב ושוב ברוב הפרויקטים. שימוש בפריימוורק שמכיל פונקציות שימושיות למדי יכול לחתוך את זמן הפיתוח ולאפשר קוד הרבה יותר יעיל. דוגמא טובה לפריימוורקים אחרים היא פריימוורקים של JavaScript כמו jQuery או MooTools שמאפשרים פיתוח סקריפטים מהיר וקל למי שמכיר. Zend Framework היא אחד מהפריימוורקים הכי פופולריים בשפת PHP (על פריימוורקים אחרים אפשר למנות את Symphony, CodeIgniter, CakePHP ואפילו את ג'ומלה ודרופל).

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

זנד היא ספריה שאותה יש להתקין על שרת הפיתוח שלנו או על WampServer על מנת שהיא תעבוד. בנוסף אנו מבצעים את ההתקנה עם מה שנקרא CLI – command-line interface שיכול להיות מותקן הן על חלונות (ואז אנו משתמשים ב-cmd כדי להפעיל אותו) או על לינוקס (ואז אנחנו משתמשים בקונסולה כדי להפעיל אותו). נשמע מסובך? קראו את הוראות ההתקנה…

התקנת זנד על WampServer

אני לא משתגע על WampServer ומעדיף לעבוד מול שרת פיתוח לינוקס (זה קל מאד! תראו איך מתקינים). אבל בקרב עמי אני חי ואני יודע שיש הרבה מפתחי PHP שעובדים על חלונות. בכל מקרה, אני מעדיף את WampServer על פני Xamp.

ראשית אנו נוריד את הפריימוורק של זנד מהאתר של זנד. שימו לב שאנו לא מורידים את זנד סרבר או כל דבר אחר.

אחרי שהורדנו את ה-zip של זנד, אנו נפתח אותו ב-c:\wamp\bin\php\includes תחת שם התיקיה zend. אחרי כן נלך לקובץ php.ini שנמצא תחת: C:\wamp\bin\apache\Apache2.2.11\bin\php.ini (סביר להניח שתיקית Apache2.2.11 תהיה עם מספר גרסה שונה), שם נכניס את השורה:


include_path = ".;c:\wamp\bin\php\includes\zend\library"

שכמובן ה-include_path צריך להיות התיקיה שבה נמצא הזנד שאותו שחררנו מכיווץ.

אחרי כן יש לגשת לתיקית zend\bin ולהעתיק ממנה את שני הקבצים zf.bat ו-zf.php ולהעתיק את שניהם אל: C:\wamp\bin\php
(שוב, תיקית ה-php תהיה עם גרסה מסוימת). יש להכנס אל ה-cmd, להגיע עד התיקיה של: C:\wamp\bin\php ואז להקליד zf show version, צריך להופיע משהו כזה:

התקנה מוצלחת של ZF על WAMP

במידה ויוצא לכם תקלה מוזרה, בנוסח:


***************************** ZF ERROR ********************************
In order to run the zf command, you need to ensure that Zend Framework
is inside your include_path.  There are a variety of ways that you can
ensure that this zf command line tool knows where the Zend Framework
library is on your system, but not all of them can be described here.

או משהו כזה:
cmd לאחר שהפעלתי את zf.bat

סימן שפישלתם עם הכנסת ה-include, שימו לב שאתם מכניסים אותו כמו שצריך, שהנתיב של התיקיה נכון, שהאות C קטנה ושאתם מכוונים לתיקית zend\library.

אחרי שהתקנו בהצלחה, נלך לתיקיה שאליה העתקנו את zf.bat ואת zf.php ונקליד:


zf create project c:\wamp\www\internet_site

השורה הזו בעצם יוצרת פרויקט בשם internet_site. אם נלך לתיקית: c:\wamp\www\internet_site נראה שנוצר לנו פרויקט שאפשר ממש להכנס אליו. אך לפני שנוכל להכנס אליו, נצטרך לוודא ש-mod_rewrite עובד. מה שנעשה הוא ללחוץ על הסמל של WampServer, לבחור ב-Apache ואז ב-Apache modules ואז לגלול מטה ברשימה עד שאנו מוצאים את rewrite_module ולסמן לידו V אם לא קיים כזה.
הפעלת rewrite module ב-WampServer

אחרי שעשינו את זה, נשאר רק להכנס ל: http://localhost/internet_site/public ולראות את המסך המופלא הבא:
זנד הותקן בהצלחה

התקנת זנד על Linux Debian

למרות שאני מסביר על לינוקס דביאן, אני משער שמשתמשי שאר ההפצות לא יתקשו לעבוד עם ההוראות האלו. אני יוצא מנקודת הנחה ש-mod_rewrite מופעל. ו-htaccess באמת עובד.

ראשית נתקין את זנד באמצעות:


sudo apt-get install zend-framework-bin

אחרי כן נקליד את הפקודה:


zf show version

אם הכל תקין (ולמה שלא יהיה?) אנו נקבל את מספר הגרסה.

כעת אנו צריכים לבצע include באמצעות ה-php.ini של ה-apache. הכנסו עם עורך הטקסט החביב אליכם אל:


/etc/php5/apache2/php.ini

והכניסו את השורה הבאה:


include_path = ".:/usr/share/php/libzend-framework-php/"

ונרסטרט את ה-Apache באמצעות:


sudo /etc/init.d/apache2 restart

אחרי כן אנו נתקין את הפרויקט בתיקיה הפומבית של ה-apache (בדרך כלל var/www) באופן הבא:


zf create project /home/ran/www/internet_site

כעת נותר רק לבדוק שהכל תקין באמצעות כניסה אל internet_site/public עתה כדי לראות שהכל תקין:
התקנה מוצלחת של זנד על לינוקס

במידה ואתם רואים תקלה מוזרה נוסח:


Warning: require_once(Zend/Application.php) [function.require-once]: failed to open stream: No such file or directory in index.php on line 18

סימן שלא הכנסתם את ה-include_path כמו שצריך. שימו לב להודעת השגיאה! היא אומרת לכם באיזה נתיב היא משתמשת, תקנו את הנתיב בהתאם ואל תשכחו לבצע ריסט ל-apache אחרי כל שינוי.

סיכום

גם אם אתם משתמשים בחלונות או בלינוקס, יש לכם זנד פריימוורק שעובד ואת היכולת להתקין פרויקטים כרצונכם. במאמרים הבאים אנו נלמד איך לעבוד ממש על זנד.

פוסטים נוספים שכדאי לקרוא

פתרונות ומאמרים על פיתוח אינטרנט

יישום של nonce על מנת להגן מפני התקפות injection

בפוסט הקודם הסברתי על hash עם CSP על משאבי inline – שזה נחמד ומעולה אבל פחות ישים בעולם האמיתי שבו בדרך כלל התוכן ה-inline (בין

רספברי פיי

הרצת גו על רספברי פיי

עולם הרספברי פיי והמייקרים ניתן לתפעול בכל שפה – לא רק פייתון או C – כאן אני מסביר על גו

ספריות ומודולים

מציאת PII באמצעות למידת מכונה

כך תגנו על משתמשים שלכם שמעלים מידע אישי רגיש כמו תעודות זהות באמצעות שירות אמאזוני.

גלילה לראש העמוד