DL1MP1K | Date: შაბათი, 2012-02-04, 2:24 PM | Message # 1 |
Lieutenant colonel
Group: VIP
Messages: 77
Awards: 0
Reputation: 1
Status: გასული
| PHP-ს ერთ-ერთი უმთავრესი ძალა მდგომარეობს მის ფუნქციებში, მას გააჩნია ათასამდე ჩადგმული ფუნქცია. PHP-ში სცენარების უმრავლესობა იწერება ფუნქციების მეშვეობით და ჩადგმული კლასებით. კლასებს ჯერ-ჯერობით თავი დავანებოთ, და მხოლოდ ის ვთვათ რომ კლასები გახლავთ უბრალოდ ფუნქციების ნაკრები, რომლებიც გართულებული მეთოდებით ასრულებენ მათ ფუნქციონირებას. PHP-ის ჩადგმული ფუნქციებით პროგრამისტები ადგენენ თავიანთ ფუნქციებს, რაც ეხმარებათ სცენარის უფრო მარტივი და გაფართოებული მოქმედებისთვის.
ფუნქციის შექმნა
ფუნქციის შექმნა ძალიან მარტივია, ჯერ ინტერპრეტატორს უნდა გამოვუცხადოთ რომ ვქმნით ფუნქციას ბრძანებით function ან create_function()-რომელსაც მოგვიანებით გავარჩევთ. function-ის შემდეგ ვწერთ ჩვენი ფუნცქიის სახელს. მსგავსი ფუნქცია არ უნდა არსებობდეს, წინააღმდეგ შემთხვევაში ინტერპრეტატორი ამას ჩათვლის შეცდომად. სახელის შემდეგ იწერება ფუნქციის კოდი ეგრედ წოდებულ "bracket"-ებში ( { } ).
შევქმნათ ფუნქცია, რომელიც ეკრანზე გამოიტანს იმ ფაილის სახელს რომელზედაც ვმუშაობთ:
Code <?php function pailis_saxeli() { echo __FILE__; // __FILE__ წარმოადგენს კონსტანტას } ?>
ფუნქციის არგუმენტები
ფუნქციის უმთავრესი ძალა მდგომარეობს იმაში, რომ შესაძლებელია მივაწოდოთ ერთი ან მეტი არგუმენტი. უარგუმენტო ფუნქციები, უბრალოდ ახდენენ კოდის შემოკლებულად დაწერას, მაგალითად ერთხელ დავწერთ ფუნქციას, რომელიც მრავალ სხვა ფუნქციებს იძახებს, ხოლო შემდეგ სადაც გვინდა მარტივად გამოვიძახებთ მას, ის კი ავტომატურად შეასრულებს სხვა დავალებებს. არგუმენტიან ფუნქციებს სულ სხვა დატვირთვა გააჩნიათ, ისინი მიწოდებული ცვლადებით ასრულებენ მითითებულ ბრძანებებს. არგუმენტის მიწოდება ძალიან ადვილია, ფუნქციას ფრჩხილებში უნდა ჩავუწეროთ ცვლადის სახელი, რომელსაც შემდეგ ფუნქციის გამოძახებისას მივაწოდებთ.
Code
<?php function gaormageba($ricxvi) { echo $ricxvi*2; } ?>
ფუნქციის გამოძახება
მას შემდეგ რაც შევქმნით ფუნქციას, შეგვიძლია ის გამოვიყენოთ. ეს ხდება ფუნქციის სახელის დაწერითა და გვერდზე ფრჩხილების მოთავსებით (). თუ ფუნქცია იღებს არგუმენტს მაშინ ფრჩხილებში ვათავსებთ იმ ცვლადს ან მონაცემს რისი მიწოდებაც გვინდა.
მაგალითისთვის გამოვიყენოთ ჩვენს მიერ უკვა შექმნილი ფუნქცია gameoreba($ricxvi)
Code
<?php function gaormageba($ricxvi) { echo $ricxvi*2; } gaormageba(5); ?>
ეს მაგალითი ეკრანზე რეზულტატად გამოიტანს 5-ისა და 2-ის ნამრავლს, ანუ 10-ს. იმ შემთხვევაში თუ ფუნქცია არგუმენტს არ იღებს ფრჩხილებში არაფერს არ ვათავსებთ. ყველა ფუნქციას რომელიც იღებს არგუმენტს გამოძახებისას აუცილებლად უნდა მიენიჭოს რაიმე.
მრავალარგუმენტიანი ფუნქციები
ფუნქციები რომლებიც იღებენ ერთზე მეტ არგუმენტს ფუნქციის პარამეტრების ადგილას (ფრჩხილებში) ცვლადები გამოყოფილ უნდა იქნას მძიმეებით, იგივე ხდება გამოძახებისასაც.
Code
<?php function namravli($ricxvi1, $ricxvi2) { echo $ricxvi1*ricxvi2; } namravli(12, 4); ?>
დაყენებული ცვლადები
არსებობს შემთხვევები, როდესაც გვსურს ფუნქციამ რაღაც ცვლადებს ავტომატურად მიანიჭოს მნიშვნელობები. ასეთ შემთხვევაში ცვლადს არგუმენტების სიაშივე ვუთითებთ მნიშვნელობას, ამის შემდეგ ფუნქციის გამოძახებისას თუ მას არ მივანიჭეთ ახალი მნიშვნელობა, ფუნქცია მას აღიქვამს ისე როგორც პარამეტრში მივუთითეთ:
Code
<?php function namravli_da_mimateba($namravli1, $namravli2, $mimateba=15) { echo $namravli1*$namravli2+$mimateba; } namravli_da_mimateba(20,2); // gamoitans 55-s echo " "; namravli_da_mimateba(20,2,20); // gamoitans 60-s ?>
დაბრუნების მეთოდი
ფუნქციებს გააჩნიათ ძალიან სასარგებლო მეთოდი return, ამ ბრძანების შემდეგ მომავალი ცვლადი ან რაიმე მონაცემი ინტერპრეტატორს ეუბნება, რომ იმ ადგილს სადაც ხდება ფუნქციის გამოძახება მიენიჭოს ფუნქციის მიერ დაბრუნებული მონაცემი. უფრო ადვილი გასაგებისთვის წარმოიდგინეთ, რომ იქნებ არ გვსურს რომ ზემოთ გარჩეულმა ფუნქციება არ გამოიყენონ echo ბრძანება, არ გამოიტანონ ეკრანზე ეგ ტექსტი არამედ უბრალოდ დააბრუნონ ის რასაც ეკრანზე გამოიტანდნენ სცენარის მომავალი გაგრძელებისთვის.
Code <?php function gaormageba($ricxvi) { return $ricxvi*2; } function namravli_da_mimateba($namravli1, $namravli2, $mimateba=15) { return $namravli1*$namravli2+$mimateba; } $pasuxi1 = namravli_da_mimateba(20,2); $pasuxi2 = gaormageba($pasuxi1); echo "Pasuxi aris: ".$pasuxi2; ?>
გლობალური ცვლადები
ფუნქციის შესრულებისას ფუნქცია ვერ ხედავს ვერც ერთ ცვლადს გარდა იმ ცვლადებისა რომლებიც მას არგუმენტებით მიეწოდება. იმისათვის რომ მან შეძლოს სხვა საჭირო მონაცემების მიღება, აუცილებელია ფუნქციაში გამოვიყენოთ კონსტრუქცია global
Code <?php $saiti = "none.ucoz.lv Portal"; function chveneba($agcera="Agceris Gareshe") { global $saiti; $teqsti = "<b>".$saiti."</b> ".$agcera; echo $teqsti; } chveneba("Kompiuteruli Portali, Diskusiebi, Programebi, Skriptebi, Scavleba, a.sh."); ?>
მითითებული ცვლადები
ჩვეულებრივ, როდესაც არგუმენტები ეგზავნება ფუნქციას მისი შეცვლილი მნიშვნელობა ფუნქციის გარეთ რჩება ის რაც იყო. თუ გსურთ, რომ მითითებული ცვლადის მნიშვნელობა შეიცვალოს ფუნქციასთან ურთიერკავშირში მაშინ ცვლადის წინ უნდა დასვათ & სიმბოლო.
Code <?php function teqstis_micera(&$teqsti) { $teqsti .= "es ki micerili teqsti"; } $nacili = 'es aris teqstis nacili... '; teqstis_micera($nacili); echo $nacili; ?>
რასაკვირველია ეს მაგალითი ეკრანზე გამოიტანს შემდეგ ტექსტს: es aris teqstis nacili... es ki micerili teqsti
მიზანი ამართლებას საშუალებას ! ვინც ეძებს ის პოულობს : http://therealgta.ucoz.com ითამაშე ფლეშ თამაშები : http://gamesforboys.in
|
|
| |