2011-03-18 3 views
0
$this->get_name = mysqli_fetch_assoc(mysqli_query($this->link,"SELECT complete_name FROM student WHERE email='$this->email'")); 

mysqli_query($this->link, $this->drop_query) or die(mysql_error()); 

echo $this->get_name['complete_name']. " has been marked as Left!"; 

내가이 프로그램을 실행할 때 내가 얻을 다음PHP는 에코 질문

가! "요한이 왼쪽으로 표시되었습니다"

! "배열 [ 'complete_name']가 왼쪽으로 표시되었습니다"내가

echo ".$this->get_name['complete_name'] has been marked as Left!"; 

을 실행할 때

는하지만 난이 얻을

같은 내용을 인쇄하지 않겠습니까?

답변

3

PHP : S 파서 나던 변수가 두 번째 경우에 어디에서 끝나는 배열 오프셋 사용을 얻고 싶은 경우에, 문자열

echo "{$this->get_name['complete_name']} has been marked as Left!"; 
+0

네를. 중괄호를 사용하지 않는 변수 대체는 식별자의 일부로 유효한 문자 만 고려합니다. 중괄호를 사용하여 명시 적으로 대체를 구분하십시오. – tdammers

+0

Docu : http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing.complex –

1

에서 변수를 캡슐화} {사용 알고

{$this->get_name['complete_name']} 

대괄호를 사용하면 가능한 경우 PHP가 전체 포함을 변수로 사용하도록합니다.

자세한 내용은 PHP's String Parsing을 참조하십시오. 자신의 예제의 일환으로 그들은이 예제가 : 아무것도에게 $complete_name 같은보다 복잡한 반향거야 때마다

// Works, quoted keys only work using the curly brace syntax 
echo "This works: {$arr['key']}"; 
0

을, 나는 따옴표에 포함되지 않습니다 :

echo $this->get_name['complete_name'].' has been marked as Left!'; 

내가 찾을 쉽게 인용 라인을 읽는 방법을 찾고 그래서 만약 등의 객체 및 배열을 처리 할 때 문장이 어쨌든 손실로 전체 견적을 읽기의 용이성, 내가 사용하는 것이 좋습니다 수 있습니다

$complete_name = $this->get_name['complete_name']; # deal with the dirty stuff here 

echo "$complete_name has been marked as left!";  # so this is much easier to read 
+0

이렇게해서는 안됩니다. 큰 따옴표를 사용하고 연결하여 PHP 작업을 이중 작업으로 만듭니다. 이 작업을 수행하려면 항상 문자열에 작은 따옴표를 사용하십시오. –

+0

좋은 전화 케빈. 나는 갱신을했다. –