PHP: განსხვავება გადახედვებს შორის

მასალა ვიკიპედიიდან — თავისუფალი ენციკლოპედია
[შეუმოწმებელი ვერსია][შემოწმებული ვერსია]
შიგთავსი ამოიშალა შიგთავსი დაემატა
No edit summary
No edit summary
ხაზი 25: ხაზი 25:
კომპილირდება დღეისათვის ყველაზე პოპულარულ WEB-სერვერ-პროგრამა
კომპილირდება დღეისათვის ყველაზე პოპულარულ WEB-სერვერ-პროგრამა
Apache-სთვის. სერვერზე PHP-პროგრამები უმეტესწილად ურთიერთობენ
Apache-სთვის. სერვერზე PHP-პროგრამები უმეტესწილად ურთიერთობენ
MყშQL მონაცემთა ბაზასთან (რომელიც უფასოდ ვრცელდება). ასე რომ,
MysQL მონაცემთა ბაზასთან (რომელიც უფასოდ ვრცელდება). ასე რომ,
APACHE, MySQL და PHP ტრიადას დღევანდელ დღეს კონკურენტი არ ჰყავს.
APACHE, MySQL და PHP ტრიადას დღევანდელ დღეს კონკურენტი არ ჰყავს.
თუმცა, ცხადია, PHP-ს მუშაობა შეუძლია სხვა WEB-გარემოში და სხვა
თუმცა, ცხადია, PHP-ს მუშაობა შეუძლია სხვა WEB-გარემოში და სხვა
ხაზი 48: ხაზი 48:
PHP-ს უფასოდ ჩამოტვირთავთ მისი ოფიციალური საიტი კვანძიდან. მისამართზე შესაძლებელია პროდუქტის
PHP-ს უფასოდ ჩამოტვირთავთ მისი ოფიციალური საიტი კვანძიდან. მისამართზე შესაძლებელია პროდუქტის
შესახებ უახლესი, ამომწურავი ინფორმაციის მიღება.
შესახებ უახლესი, ამომწურავი ინფორმაციის მიღება.
შევისწავლოთ, როგორ ხდება PHP-ის დაყენება APACHE WEB სერვერთან სამუშაოდ, კომპიუტერის მართვისას [[LINUX]] ოპერაციული სისტემის მიერ. (საერთოდ, შესაძლებელია APACHE-სთან უკვე მიერთებული
შევისწავლოთ, როგორ ხდება PHP-ის დაყენება APACHE WEB სერვერთან სამუშაოდ, კომპიუტერის მართვისას [[ლინუქსი]] ოპერაციული სისტემის მიერ. (საერთოდ, შესაძლებელია APACHE-სთან უკვე მიერთებული
PHP-ის ვარიანტის მოძიებაც, მაგრამ როცა ამ პროცესს თვითონ
PHP-ის ვარიანტის მოძიებაც, მაგრამ როცა ამ პროცესს თვითონ
ვახორციელებთ, არჩევანი უფრო ფართო ხდება ამ შემთხვევაში
ვახორციელებთ, არჩევანი უფრო ფართო ხდება ამ შემთხვევაში

19:07, 6 ივნისი 2015-ის ვერსია

PHP

PHP (ინგლ. PHP: Hypertext Preprocessor) — პროგრამირების ენა, რომელიც თავისი ოპერატორებით PHP კოდს, ბრაუზერში გარდაქმნის HTML და XHTML კოდად. ბრაუზერის მისამართების პანელში საიტის გამოძახებისას სახელწოდების ბოლოს php დაბოლოება ნიშნავს იმას, რომ მოცემული საიტი შექმნილია PHP კოდით. ბრაუზერში გვერდის ვებ-კოდების მოთხოვნისას, არ გამოჩნდება PHP კოდი, გამოჩნდება მხოლოდ HTML კოდი. ეს ტექნოლოგია პროგრამირებაში ახალი არაა და იგი ჯერ კიდევ PERL -ში გამოიყენებოდა, რომლისაგანაც წარმოიშვა PHP. 1994 წელს რასმუს ლერდორფმა, რომელსაც სურდა ხსენებული ხერხის განხორციელება ბრაუზერში, შექმნა პირველი ვერსია, რომელიც ამავე წელს გამოაქვეყნა, სახელწოდებით Personal Homepage Tools. პირველი ვერსია მალე გადამუშავდა და მას ოფიციალურად დაერქვა PHP.

შესავალი PHP-ში

არცთუ დიდი ხნის წინ Web-კვანძებიდან მომხმარებელს ადგილზე ძირითადად სტატიკური HTML-ფაილები გადმოეცემოდა, რომელთაც იგი ბროუზერის მეშვეობით მხოლოდ კითხულობდა. დღეს კი WEB-სივრცეში უმეტესწილად დინამიკური Web-ფურცლები ანუ DHTML-ფაილები გადაიგზავნება. მათი აწყობა ხდება Web-კვანძების სერვერზე განთავსებული WEB-პროგრამების გაშვებით, რასაც მომხმარებელი ახორციელებს საკუთარი კომპიუტერიდან სისტემასთან დიალოგში. ინტერნეტში პროგრამების შექმნისათვის დღეს ყველაზე პოპულარული WEB-დაპროგრამების ენა გახლავთ PHP4. იგი განსაკუთრებით აადვილებს სერვერებზე განლაგებულ მონაცემთა ბაზებთან ურთიერთობას. დასაწყისში PHP შეიქმნა, როგორც მაკროსების კრებული, მარტივი სახის პირადი WEB-ფურცლების ფორმირებისთვის. შემდეგ კი იგი იქცა სრულფასოვან დაპროგრამების ენად, რომელზეც დაწერილი კონსტრუქციები ჩაიდგმება სერვერზე მოთავსებულ HTML- ტექსტებში. WEB-ფურცლის გამოძახებისას PHP-ის პრეპროცესორის მიერ ადგილზე ხდება ამ კონსტრუქციების (პროგრამული ფრაგმენტების) დამუშავება და HTML-ის არსებულ ფრაგმენტებს შორის ჩაემატება შესაბამისი ინფორმაცია, მაგალითად, ბაზიდან ამოღებული მონაცემები, სერვერზე კონსტრუირებული გრაფიკული გამოსახულებები და სხვ. PHP-ის ვერსია - PHP4(5) - მისაერთებელი მოდულის სახით კომპილირდება დღეისათვის ყველაზე პოპულარულ WEB-სერვერ-პროგრამა Apache-სთვის. სერვერზე PHP-პროგრამები უმეტესწილად ურთიერთობენ MysQL მონაცემთა ბაზასთან (რომელიც უფასოდ ვრცელდება). ასე რომ, APACHE, MySQL და PHP ტრიადას დღევანდელ დღეს კონკურენტი არ ჰყავს. თუმცა, ცხადია, PHP-ს მუშაობა შეუძლია სხვა WEB-გარემოში და სხვა ბაზებთანაც. საერთოდ, PHP-პროგრამებს ინტერპრეტატორი ამუშავებს, მაგრამ შესაძლებელია მათი კომპილირებაც (თუმცა ეს შესაძლებლობა მხოლოდ კომერციული დამატების სახით არსებობს), რაც კიდევ უფრო ამაღლებს სისტემის მწარმოებლურობას. CGI-სთან შედარებით PHP-ს ის მნიშვნელოვანი უპირატესობა გააჩნია, რომ მისი ინტერპრეტატორი ფუნქციონირებს სერვერთან მჭიდრო ინტეგრაციის პირობებში საჭირო არ გახლავთ თითოეული პროგრამის შესრულებისას სისტემის ხელახლა გაშვება, რაც მნიშვნელოვნად ამაღლებს მუშაობის სისწრაფეს. PHP-ს რიგი სხვა ღირსებებიც გააჩნია: • პროდუქტის ღიაობა; • პროგრამების დაწერის გაადვილება HTML-ტექსტისა და თვით პროგრამული ნაწილის განცალკევების გამო; • პროგრამების ერთი ოპერაციული სისტემიდან სხვაში გადატანის სიმარტივე; • პროგრამების შესრულების საკმარისი სისწრაფე.

დაყენება

PHP-ს უფასოდ ჩამოტვირთავთ მისი ოფიციალური საიტი კვანძიდან. მისამართზე შესაძლებელია პროდუქტის შესახებ უახლესი, ამომწურავი ინფორმაციის მიღება. შევისწავლოთ, როგორ ხდება PHP-ის დაყენება APACHE WEB სერვერთან სამუშაოდ, კომპიუტერის მართვისას ლინუქსი ოპერაციული სისტემის მიერ. (საერთოდ, შესაძლებელია APACHE-სთან უკვე მიერთებული PHP-ის ვარიანტის მოძიებაც, მაგრამ როცა ამ პროცესს თვითონ ვახორციელებთ, არჩევანი უფრო ფართო ხდება ამ შემთხვევაში პარამეტრებს ენიჭება მნიშვნელობებს). სისტემაში PHP-ის დაყენების უფლება მხოლოდ ადმინისტრატორს (სუპერმომხმარებელს) აქვს. PHP-ის, როგორც APACHE-სთვის მოდულის, კომპილირება ორი გზით შეიძლება განხორციელდეს:

  • პირველი გულისხმობს Apache-ის ხელახლა კომპილაციას მასთან
  • PHP-ის სტატიკურად მიერთებით (ლინკირებით);
  • მეორე გზა ითვალისწინებს მხოლოდ PHP-ის კომპილაციას,

ოღონდ მანამდე უნდა განხორციელდეს APACHE-ის კომპილაცია DSO რეჟიმში (Dynamic shared object - საერთო სარგებლობის დინამიური ობიექტს აღნიშნავს). სწორედ, ამ რეჟიმით ვისარგებლებთ PHP-ის კომპილირებისას. ეს გზა PHP-ის დაყენების უფრო მარტივი ხერხია და ჩვენც მას განვიხილავთ. იმის შესამოწმებლად, უზრუნველყოფს თუ არა Apache აღნიშნულ რეჟიმში მოდულების მიერთებას, საჭიროა შესრულებაზე გავუშვათ httpd ფაილი -1 ალმით:

/www/bin/httpd -1

გამოდის მოდულების სია. თუ მასში ფიგურირებს mod_so.c, დავასკვნით, რომ DSO რეჟიმში მუშაობა შესაძლებელია (წინააღმდეგ შემთხვევაში მოგვიწევს Apache-ის ხელახლა კომპილირება). PHP4-ის ჩამოტვირთვის შედეგად განკარგულებაში გვეძლევა გზიპ უტილიტით შეკუმშული Php-4.0.4pll.tar.gz დისტრიბუტიული ფაილი. მისი გაშლა შემდეგი ბრძანებით ხდება:

tar -xvzf php-4.0.4pll.tar.gz

გადავდივართ PHP-დისტრიბუტივის კატალოგში:

pd../php-4.0

შესრულებაზე ვუშვებთ აღნიშნულ კატალოგში არსებულ ცონფიგურე პროგრამას პარამეტრებისათვის ყველაზე უფრო მიღებული მნიშვნელობების მინიჭებით:

./configure --enable-track-vars \
--with-gd \
--with-mysql \
--with-apxs=/www/bin/apxs

ბოლო მნიშვნელობა იმ კატალოგზე მიუთითებს, რომელშიც Apache Web-სერვერია დაყენებული, myspl ბაზისთვის კი იგულისხმება, რომ იგი დუმილით გათვალისწინებულ კატალოგშია დაყენებული. მაგრამ თუკი ეს ასე არ გახლავთ, საჭიროა ამ განსხვავებული კატალოგის შესახებ ინფორმაციის გათვალისწინებაც:

 --with-mysql=/path/to/dir

configure პროგრამის შესრულების შემდეგ ვუშვებთ მაკე უტილიტას. კომპიუტერზე დაყენებული უნდა იყოს C ენის კომპილატორი.

Apache სერვერი

Apache-სერვერის კატალოგის conf-ქვეკატალოგში მოვძებნით httpd.conf ფაილს და დავუმატებთ მას შემდეგ სტრიქონებს:

AddType application / x-httpd-php .php
AddType application / x-httpd-php-source .phps

ეს ნიშნავს, რომ PHP-ინტერპრეტატორი .php გაფართოების ფაილებს დაამუშავებს როგორც პროგრამებს, ხოლო .phps გაფართოების მქონეთ _ როგორც გაფერადებულ HTML-ტექსტს. php.ini ფაილის მეშვეობით კი შესაძლებელია PHP-ის პარამეტრების შეცვლა უკვე მისი კომპილირების და დაყენების შემდეგ. UNIX ამ ფაილს ინახავს /usr/local/lib ბ კატალოგში, ხოლო ვინდოუს ოპერაციული სისტემა - ვინდოუს-ში. შესაძლებელია ამ ფაილის მიმდინარე კატალოგში განთავსებაც. მაშინ მას ექნება ლოკალური მოქმედების არეალი. ჯერჯერობით კი ჩვენ ვკმაყოფილდებით ამ ფაილის პარამეტრებისთვის მინიჭებული სტანდარტული მნიშვნელობებით. php.ini ფაილში შეიძლება მნიშვნელობის განსაზღვრა შემდეგი დირექტივისთვისაც: short_open_tag=On (True,Yes), რაც უზრუნველყოფს php-ბლოკების გაფორმებას <?Bბლოკი ?> სახით. ამ შესაძლებ- ლობისGგამორთვა ხორციელდება დირექტივისთვის Off (False,No მნიშვნელობის მინიჭებით. თუ ჭებ-ფურცლების ფორმირებისათვის XML-ენასაც ვიყენებთ, მაშინ ამ ე.წ. მოკლე ტეგების გამოყენება ზემოთ აღნიშნული ხერხითვე უნდა ავკრძალოთ და ვისარგებლოთ მხოლოდ სტანდარტული ტეგებით: <?php ?>

Hello World

პირველი პროგრამა PHP-ზე ბლოკონტ-ტექსტში აკრიფეთ შემდეგი ტექსტი:

<?php
print “Hello Web!”;
?>

ფაილი დაიმახსოვროთ first.php სახელით. თუ სერვერზე არ ვმუშაობთ, მოგვიხდება FTP-სერვისით ფაილის მასზე გადაგზავნა (კოპირება). შემდეგ კი ამ ფაილს შეიძლება მიმართოთ ბროუზერიდან. ეკრანზე აისახება წარწერა: Hელლო ჭებ! მაგრამ თუკი სერვერზე PHP დაყენებული არ გახლავთ, ანდა ფაილის გაფართოება არასწორად იქნა განსაზღვრული, მაშინ მოსალოდნელია ეკრანზე გამოვიდეს შემდეგი ტექსტი:

<?php
Hello Web!
?>

print() წარმოადგენს ფუნქციას თქვენ მიერ დაწერილ უმარტივეს პროგრამაში. თუ მას ეკრანზე სტრიქონი გამოჰყავს, მაშინ ეს სტრიქონი ბრჭყალებში უნდა ჩაისვას (დასაშვებია ერთმაგი ბრჭყალებიც). იცით, რომ ფუნქციის არგუმენტები ფრჩხილებში უნდა მოთავსდეს. პრინტ ფუნქცია კი ამ მხრივ გამონაკლისია - დასაშვებია მის მიერ გამოსაყვანი ინფორმაცია ფრჩხილებში არ მოაქციოთ. PHP-ინსტრუქციები წერტილ-მძიმით უნდა დაბოლოვდეს. გამონაკლისს შეიძლება წარმოადგენდეს ბლოკში ბოლო ინსტრუქცია, თუმცა ეს რეკომენდირებული არ გახლავთ (საეჭვო შემთხვევებში შეიძლება ასეთმა გადაწყვეტილებამ ინტერპრეტატორი შეცდომაში შეიყვანოს). ისევე, როგორც ჯავასკრიფტი-ის სცენარები, PHP-ინსტრუქციების ბლოკებიც შეიძლება უშუალოდ HTML-ტექსტში განლაგდეს: ლისტინგი 1

<html>
<head>
<title> HTML-ის და PHP-ის კავშირი! </title>
</head>
</body>
<?php
print  “წინ, პროგრამირებაში ახალი მწვერვალების დასაპყრობად!”;
?>
</body>
</html>

.

ცვლადები

ცვლადები PHP-ში ცვლადის სახელი $ სიმბოლოთი იწყება! მომდევნო პოზიციებზე კი შეიძლება გამოიყენოთ ლათინური სიმბოლოები, ციფრები და ხაზგასმის ნიშანი. სხვა სიმბოლოების, მათ შორის ხარვეზის (ცარიელი არის) გამოყენება არ დაიშვება. მოვიყვანოთ ცვლადების სწორად დასახელების მაგალითები:

$ a
$ a_b_c
$ b555

ცვლადებს ენიჭებათ მნიშვნელობები. Mმნიშვნელობები და შესაბამისად ცვლადებიც სხვადასხვა ტიპის შეიძლება იყოს. Kკერძოდ, ცვლადებში დასაშვებია შევინახოთ: რიცხვები, სიმბოლოთა სტრიქონები, ობიექტები, მასივები, ლოგიკური მნიშვნელობები... როგორც წესი, ცვლადის შექმნა და მისთვის მნიშვნელობის მინიჭება ერთსა და იმავე ინსტრუქციაში ხდება, მაგალითად:

$num1 = 8;
$name = “ანდრია”;

ინსტრუქციებში მნიშვნელობამინიჭებული ცვლადის გამოყენება, ფაქტობრივად, ამ მნიშვნელობის გამოყენებაა. მაგალითად, გამოსახულება

print $num1;

ეკრანზე გამოიყვანს იმავე ინფორმაციას (8), რასაც - გამოსახულება

print 8;


რა უნდა ვიცოდეთ?

  • HTML / XHTML
  • ცოტაოდენი სხვადასხვა სკრიპტები

HTML-ის შესასწავლად მოინახულეთ ბმული: HTML

რა არის PHP?

  • PHP იშიფრება, როგორც, Hypertext Preprocessor(ჰიპერტექსტული პრეპროცესორი)
  • PHP არის სერვერული სკრიფტინგის ენა, როგორც ASP
  • PHP სკრიფტები მუშაობენ სერვერზე
  • PHP უზრუნველყოფს მრავალ მონაცემთა ბაზას (MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC და ა. შ.)
  • PHP არის ღია პროგრამული საშუალება (OSS)
  • PHP — ს გადმოწერა და მოხმარება სრულიად უფასოა

რა არის PHP ფაილი?

  • PHP ფაილები შესაძლოა შეიცავდნენ ტექსტს, HTML ტეგებს და სკრიფტებს
  • PHP ფაილები ბრუნდებიან ბრაუზერში, როგორც უბრალო HTML
  • PHP ფაილებს აქვთ შემდეგი გაფართოებები : „.php“, „.php3“, „.php4“, „.php5“, ან „.phtml“

რა არის MYSQL ?

ფაილი:Mysqllogoforphpbook.JPG
MySQL
  • MySQL არის მონაცემთა ბაზის სერვერი
  • MySQL იდეალურია დიდი და პატარა პროგრამებისათვის
  • MySQL უზრუნველყოფს სტანდარტულ SQL-ს
  • MySQL ეშვება პლადფორმების ნომრებზე
  • MySQL-ის გადმოწერა და მოხმარება სრულიად უფასოა

MYSQL (MY Structured Query Language) არის მონაცემთა ბაზა. მონაცემთა ბაზა განსაზღვრავს ინფორმაციის მოგროვების სტრუქტურას.
მონაცემთა ბაზაში არის ცხრილები. ისევე როგორც HTML ცხრილები, მონაცემთა ბაზის ცხრილები შეიცავენ რიგებს, სვეტებს და უჯრედებს.
მონაცემთა ბზაზების გამოყენება სასარგებლოა, მაშინ, როცა ვაგროვებთ კატეგორიულ ინფორმაციას. კომპანიას შესაძლოა ქონდეს მონაცემთა ბაზა მიმდინარე ცხრილებით: „მოსამსახურეები“, „პროდუქტები“, „მყიდველები“ და „შეკვეთები“.

მონაცემთა ბაზის ცხრილები

მონაცემთა ბაზა ყველაზე ხშირად შეიცავს ერთ, ან რამდენიმე ცხრილს. თითოეულ ცხრილს გააჩნია საკუთარი სახელი. თითოეული ცხრილი შეიცავს მონაცემთა ჩანაწერებს.
ქვემოთ მოყვანილია სახელად „Persons“ ცხრილის მაგალითი:

Persons
გვარი სახელი მისამართი ქალაქი
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger

ზემოთ მოყვანილი ცხრილი შეიცავს სამ ჩანაწერს (თითოს, თითო პიროვენებისათვის) და ოთხ სვეტს (გვარი, სახელი, მისამართი და ქალაქი).

მოთხოვნები

მოთხოვნა არის შეკითხვა, ან მოთხოვნა.
MySQL-თან ერთად, ჩვენ შეგვიძლია მოვითხოვოთ მონაცემთა ბაზა სპეციფიური ინფორმაციისათვის და და გვქონდეს დაბრუნებული ჩანაწერთა ბაზა. შევხედოთ მიმდინარე მოთხოვნას:

SELECT LastName FROM Persons

ზემოთ მოყვანილი მოთხოვნა მონიშნავს პიროვნებათა მონაცემთა ბაზაში, გვარის სვეტში არსებულ ყველა მონაცემს და დააბრუნებს მას ჩანაწერთა ბაზის სახით:

Persons
გვარი
Hansen
Svendson
Pettersen

PHP + MYSQL

  • PHP და MySQL ერთად არის კროს-პლათფრომა (რაც იმას ნიშნავს რომ, ჩვენ შეგვიძლია დავაპროგრამოთ Windows-ზე და ვამუშავოთ Unix ფლათფრომაზე)

რა არის XML?

ფაილი:Xmllogoforphpbook.gif
XML

XML გამოიყენება მონაცემთა აღწერისათვის და ფოკუსირებისათვის. XML ფაილი აღწერს მონაცემთა სტრუქტურას.
XML-ში, ტეგები არ არიან განსაზღვრულნი. ჩვენ უნდა განვსაზღვროთ საკუთარი ტეგები.

რა არის SIMPLEXML?

SimpleXML არის ახალი PHP 5-ში. ეს არის ადვილი გზა ელემენტის ატრიბუტებისა და ტექსტის მისაღებად, თუ ჩვენ ვიცით XML დოკუმენტის სქემა.
DOM, ან Expat parser-თან შედარებით, SimpleXML უბრალოდ იღებს კოდის რამდენიმე ხაზს, ელემენტიდან მონაცემთა ტექსტის წასაკითხად.
SimpleXML აკონვერტებს XML დოკუმენტს ობიექტში, ამის მსგავსად:

  • ელემენტები — კონვერტირებულნი არიან SimpleXMLElement ობიექტის თითო ატრიბუტად. როდესაც აქ არის ერთ დონეზე, ერთზე მეტი ელემენტი, ისინი განთავსდებიან მასშივში
  • ატრიბუტები — აქვთ წვდომა ასოციაციური მასივების გამოყენებაზე, სადაც ინდექსი შეესაბამება ატრიბუტის სახელს
  • ელემენტის მონაცემები — ტექსტური მონაცემები ელემენტებიდან კონვერტირებულნი არიან სტრინგში.

SimpleXML არის სწრაფი და ადვილი გამოსაყენებელი, როდესაც სრულდება ბაზური ამოცანები:

  • XML ფაილების წაკითხვა
  • XML სტრინგებიდან მონაცემთა ამოღება
  • ტექსტური კვანძების, ან ატრიბუტების რედაქტირება

რატომ PHP?

  • PHP ეშვება სხვადასხვა პლათფორმაზე(Windows, Linux, Unix და ა. შ.)
  • PHP ეშვება თითქმის ყველა იმ სერვერზე, რაც დღესდღეობით გამოიყენება(Apache, IIS და ა. შ.)
  • PHP სწავლა საკმაოდ ადვილია

როგორ დავიწყოთ?

  • დავაყენოთ Apache server, Windows-ზე, ან Linux -ზე
  • დავაყენოთ PHP , Windows-ზე, ან Linux -ზე
  • დავაყენოთ MySQL , Windows-ზე, ან Linux -ზე

რესურსები ინტერნეტში

მოძიებულია „https://ka.wikipedia.org/w/index.php?title=PHP&oldid=2924896“-დან