나는 이런 식으로 호출되는 함수가 있습니다, PHP의 객체 부모
foo($object->ID);
및 기능에 나는 $object->ID
가 변수로 전달되는 경우 어떻게 든 $object
을 선택해야합니다.
function foo($id = NULL){
if($id != NULL) ... // here I want to get $object
else ...
}
어떻게하면됩니까?
나는 이런 식으로 호출되는 함수가 있습니다, PHP의 객체 부모
foo($object->ID);
및 기능에 나는 $object->ID
가 변수로 전달되는 경우 어떻게 든 $object
을 선택해야합니다.
function foo($id = NULL){
if($id != NULL) ... // here I want to get $object
else ...
}
어떻게하면됩니까?
이, 왜 그냥 심판에 의해 객체 자체를 전달 : 왜 안
그건 불가능합니다. 출처에 관한 정보없이 번호를 전달하고 있습니다. 이 작업을 수행하십시오
foo($object)
function foo($object){
if($object->ID !== null) ... // work with $object
else ... // work with ID
}
ID 대신 인수로 개체를 전달해야합니다.
foo($object);
내가 제대로 질문을하는지 이해한다면
function foo($localObject){
if(isset($localObject->id)){
}
}
당신은 또 다른 매개 변수를 추가하지에있는 개체를 전달하고 해당 개체에서 ID를 받아야합니다 ... 당신은 심판에 의해 통과 방법 그건 꽤 확신합니다. – Josh
?
function foo(&$obj)
{
if($obj != NULL && $obj->ID != NULL)
{
// ...process your stuff
}
}
내 PHP의 꽤 녹슨,하지만 난
이 경우 Pass-by-Ref는 관련이 없습니다. –
나는 분명히해야한다 : 당신은 완전히 새로운 사본을 만들지 않도록 참조로 객체를 전달하고 싶다. –
그 이유는 꽤 어리석은 짓입니다 :) 나는이 모든 것을 제외하고는 모두'$ object-> id'를 인수로 사용하는 함수 집합을 가지고 있습니다. 그리고 이것은 단지 하나만 쓰지 않았다면보기 흉하게 보입니다. – Alex