codeigniter
चलिए शुरू करते हैं: हैलो वर्ल्ड
खोज…
एक बहुत ही सरल हैलो वर्ल्ड एप्लीकेशन
Codeigniter 3 की एक नई स्थापना से शुरू, यहाँ एक हैलो वर्ल्ड एप्लीकेशन के साथ शुरू करने का एक सरल तरीका है, इस बर्फ PHP फ्रेमवर्क के साथ बर्फ को तोड़ना।
ऐसा करने के लिए आप वह दृश्य बनाना शुरू कर सकते हैं जिसे हम अपने हैलो वर्ल्ड ऐप के लिए दिखाना चाहते हैं।
हम इसे आपके एप्लिकेशन फ़ोल्डर में डालने जा रहे हैं, यहां:
hello_world.php
( /application/views/
)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hello World</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
यह सिर्फ एक साधारण HTML सामग्री है।
अब, यह दृश्य दिखाए जाने के लिए, हमें एक नियंत्रक की आवश्यकता है। नियंत्रक वह है जो अपनी सामग्री को प्रदर्शित करने के लिए दृश्य को याद रखेगा।
इसे ठीक से काम करने के लिए, नियंत्रक को उचित नियंत्रक फ़ोल्डर में जाने की आवश्यकता है।
यहाँ हम अपने Hello World कंट्रोलर को रखने जा रहे हैं:
/application/controllers/Hello_world.php
(नियंत्रक का नाम आम तौर पर पहले अक्षर अपरकेस के साथ snake_case है )
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Hello_world extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index(){
$this->load->view('hello_world');
}
}
नियंत्रक के लिए डिफ़ॉल्ट फ़ंक्शन इंडेक्स फ़ंक्शन है।
अब आप निम्नलिखित पते पर पहुँच कर अपने हैलो वर्ल्ड पेज की सामग्री देख पाएंगे:
http://[your_domain_name]/index.php/hello_world
या, यदि आपने .htaccess का उपयोग करके फिक्स लागू किया है (फिक्स के लिए इंस्टॉलेशन पृष्ठ पर वापस जाएं)
http://[your_domain_name]/hello_world
(यदि आप स्थानीय स्तर पर काम कर रहे हैं, तो सबसे अधिक संभावना यह है कि आपको अपना पेज कहां मिलेगा: http://localhost/hello_world
)
URL वास्तव में आपके नियंत्रक वर्ग (इस मामले में Hello_world
, लेकिन URL में सभी लोअरकेस का उपयोग करके) का गठन करके बनाया गया है। इस मामले में यह पर्याप्त है, क्योंकि हमने इंडेक्स फ़ंक्शन का उपयोग किया है। यदि हम एक अलग फ़ंक्शन नाम का उपयोग करते हैं (मान लीजिए greetings
कहते हैं), तो हमें इस तरह से एक URL का उपयोग करना चाहिए:
http://[your_domain_name]/hello_world/greetings
जिसे /[controller_name]/[method_name]
रूप में संरचित किया गया है।
हेयर यू गो! आपका पहला Codeigniter एप्लिकेशन काम कर रहा है!
नियंत्रक का उपयोग थोड़ा अधिक करते हैं
अब हम दृश्य में भरने के लिए नियंत्रक की क्षमताओं का उपयोग करते हुए, थोड़ा और जटिल उदाहरण के लिए कोशिश करेंगे।
यहाँ हमारा विचार है: /application/views/hello_world.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hello World</title>
</head>
<body>
<h1><?php echo $greetings;?></h1>
</body>
</html>
अब हमारे पास अपने अभिवादन को प्रदर्शित करने के लिए एक प्लेसहोल्डर है।
यहां बताया गया है कि हम इस काम के लिए कंट्रोलर को कैसे बदलते हैं:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Hello_world extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function greetings(){
$data = array('greetings'=>'Hello World');
$this->load->view('hello_world',$data);
}
}
दृश्य में इंजेक्ट की जाने वाली जानकारी के साथ $data
सरणी तैयार की जाती है, उसी लेबल ( greetings
) का उपयोग करके जिसे दृश्य के अंदर वापस बुलाया गया है।
अंतिम परिणाम पहले उदाहरण के साथ ही है, लेकिन हम अब रूपरेखा की अधिक क्षमता का उपयोग कर रहे हैं!
आइए हमारी शुभकामनाएं चुनें: हैलो वर्ल्ड या गुड बाय वर्ल्ड या ...?
मान लीजिए कि हम एक वैकल्पिक अभिवादन करना चाहते हैं जो एक अलग URL के माध्यम से सुलभ हो। हम इसके लिए एक नया फ़ंक्शन या एक नया नियंत्रक भी बना सकते हैं, लेकिन सबसे अच्छा अभ्यास यह है कि जो हमारे पास पहले से ही है, उसे अनुकूलित करने के लिए, यह सबसे अच्छा है!
ऐसा करने के लिए, हम पिछले उदाहरणों की तरह ही दृश्य रखेंगे, लेकिन हम अपने फ़ंक्शन के लिए एक पैरामीटर पेश करेंगे, इसके लिए दो अलग-अलग अभिवादनों के बीच चयन करने में सक्षम होने के लिए:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Hello_world extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function greetings($my_greetings){
switch($my_greetings)
{
case 'goodbye':
$say = 'Good Bye World';
break;
case 'morning':
$say = 'Good Morning World';
break;
default:
$say = 'Hello World';
}
$data = array('greetings'=>$say);
$this->load->view('hello_world',$data);
}
}
अब हमारे पास कई अभिवादन विकल्प हैं! उन्हें विज़ुअलाइज़ किए जाने के लिए, हम निम्नानुसार URL में पैरामीटर जोड़ने जा रहे हैं:
http://[your_domain_name]/hello_world/greetings/goodbye
यह हमें संदेश दिखाएगा: "गुड बाय वर्ल्ड"।
URL की संरचना इस प्रकार है:
http://[your_domain_name]/[controller_name]/[function_name]/[parameter_1]
इस मामले में, हमारे अच्छे पुराने "हैलो वर्ल्ड" पर वापस जाने के लिए, पूर्व यूआरएल को बिना मापदंडों के कॉल करने के लिए पर्याप्त है:
http://localhost/hello_world/greetings
आप अपने फ़ंक्शन में कई पैरामीटर जोड़ सकते हैं (उदाहरण के लिए, यदि आपको उनमें से 3 की आवश्यकता है):
public function greetings($param1,$param2,$param3)
और उन्हें निम्नानुसार url का उपयोग करके भरा जा सकता है:
http://[your_domain_name]/[controller_name]/[function_name]/[param1]/[param2]/[param3]
जैसे http://localhost/hello_world/greetings/goodbye/italian/red
इस तरह आपके पास URL से सीधे आपके पास पैरामीटर हो सकते हैं जो कि दिखाए जाने वाले सामग्री को प्रभावित करेगा।
URL के माध्यम से पैरामीटर कैसे पास करें, इसके बारे में अधिक जानने के लिए, आप रूटिंग के विषय पर विचार कर सकते हैं!