2013-01-20 23 views
36

Vì vậy, tôi sử dụng khung php có tên là fuelphp và tôi có trang này là html tệp để tôi không thể sử dụng php trong đó. có một thanh trên cùng trong đó, tệp html của tôi sẽ gọi là ajax. Và tôi chỉ hỏi, làm cách nào để kiểm tra xem có tồn tại một hằng số trong php không? aka (các địa điểm tập tin khuôn khổ fuelphp)cách kiểm tra xem hằng số có tồn tại trong php

vì vậy đây là hằng Tôi cần phải kiểm tra (tôi cũng chỉ phải kiểm tra một trong số họ)

define('DOCROOT', __DIR__.DIRECTORY_SEPARATOR); 
    define('APPPATH', realpath(__DIR__.'/fuel/app/').DIRECTORY_SEPARATOR); 
    define('PKGPATH', realpath(__DIR__.'/fuel/packages/').DIRECTORY_SEPARATOR); 
    define('COREPATH', realpath(__DIR__.'/fuel/core/').DIRECTORY_SEPARATOR);      
    require APPPATH.'bootstrap.php'; 

chỉnh sửa:
tôi nhận ra rằng những aren' t biến là hằng số ...

+2

đề tài không phải là biến nhưng xác định. – regilero

+1

Tại sao có quá nhiều phiếu bầu cho câu hỏi này? –

+1

@EricMORAND cũng có, tại sao các downvote trên mỗi câu trả lời? –

Trả lời

43

Thứ nhất, đây không phải là biến, nhưng hằng số.

Và bạn có thể kiểm tra sự tồn tại của họ bằng cách sử dụng các chức năng defined():

bool defined (string $name) 

Kiểm tra xem hằng số cho tồn tại và được xác định.

+6

Và bằng tiếng Anh: http://php.net/manual/en/function.defined.php;) –

18

Kiểm tra sử dụng chức năng defined('CONSTANT').

Một ví dụ từ hướng dẫn:

<?php 
/* Note the use of quotes, this is important. This example is checking 
* if the string 'TEST' is the name of a constant named TEST */ 
if (defined('TEST')) { 
    echo TEST; 
} 
?> 
+0

Không chính xác; "Các biến" của OP không phải là các biến - hiển thị từ mã từ bản sửa đổi đầu tiên, được làm rõ trong văn bản sau này. –

+0

Bạn đầu tiên đặt câu hỏi về cách kiểm tra xem biến có tồn tại không .. và sau đó bạn đã thay đổi biến đó thành hằng số. ... Sẽ lịch sự nếu bạn không bỏ phiếu cho bài viết của mình ... – Niklas

+0

Tôi không - tôi không phải là người hỏi. Lưu ý rằng phiếu bầu là về tính chính xác cũng như nỗ lực. Lưu ý rằng việc xóa câu trả lời là miễn phí và lấy lại điểm của bạn, và bạn sẽ phải thực hiện nó (hoặc chỉnh sửa cho đến khi nó chính xác). –

44

Sử dụng defined() function, ví dụ:

if (defined('VAR_NAME')) { 
    // Something 
} 
+3

Và để tiết kiệm thêm vài phút gỡ lỗi, hãy đảm bảo rằng 'VAR_NAME' được bao gồm trong dấu ngoặc kép, như được hiển thị trong câu trả lời này và trong tài liệu. – Sablefoste

5

Tôi hiểu ý bạn là CONSTANTS không phải là biến! chức năng là defined();

thấy ở đây: defined

0

tôi sử dụng phương pháp này:

if (defined('My_variable') && (DEFAULT_LANGUAGE != '') && (DEFAULT_LANGUAGE != 'My_variable')) 
{ 
    // your codes here 
} 
Các vấn đề liên quan