私はこの質問が何百回も異なる方法で尋ねられることを知っています。しかし、私はこの特定のものを働かせることはできません。私は本当に混乱しています。別の "public static function"で "public static function"の変数を使用
これが私のスクリプトの冒頭で:
<?php
class API {
protected static $message, $data, $status, $session, $token, $dbo, $app;
const FAIL = 0;
const SUCCESS = 1;
const INCOMPLETE_ARGS = 2;
const GROUP_ALLOW = array(5);
public static function Init() {
global $app;
self::$status = false;
self::$message = "Invalid request.";
self::$data = "";
}
public static function Render() {
echo preg_replace("/\\\\u([0-9abcdef]{4})/", "&#x$1;", json_encode(array(
"status" => self::$status,
"message" => self::$message,
"data" => self::$data))
);
}
は、この機能があります:
public static function Login() {
$email = (isset($_REQUEST['email'])) ? $_REQUEST['email'] : "";
$password = (isset($_REQUEST['password'])) ? $_REQUEST['password'] : "";
require_once ("../app/Mage.php");
umask(0);
ob_start();
session_start();
Mage::app('default');
Mage::getSingleton("core/session", array("name" => "frontend"));
$b2bwebsiteid = Mage::getStoreConfig('base/general/b2bwebsite');
//$websiteId = Mage::app()->getWebsite()->getId();
//$store = Mage::app()->getStore();
$customer = Mage::getModel("customer/customer");
$customer->website_id = $b2bwebsiteid;
$customer->loadByEmail($email);
$countryCodeBE = $customer->getDefaultBillingAddress()->getCountry();
$countrybe = Mage::getModel('directory/country')->loadByCode($countryCodeBE);
$countryid = $countrybe->getCountryId();
.....
.....
との間に多くのコードや機能があります。
さてビットさらに、別の機能があります:
public static function ProductInfoNew() {
そして今、私がしたい事は、私はそのようにProductInfoNew機能でその最初の関数から変数$ countryidをロードすることです
if ($countryid == "BE") {
$groupid = 6;
}
else {
$groupid = 4;
}
出力は常にNULLまたは空であるようです。
$ countryid変数をグローバル変数、静的変数として設定しようとしましたが、self ::で変数をロードしようとしましたが、私は非常に多くのことを試みましたが、動作させることはできません。
これを実行する正しい解決方法を知っている人はいますか? ありがとうございます。
あなたの質問には、「そこにはこの機能があります」という部分があり、その下にコードがたくさんあります。機能はどこですか?私はちょうどコードの束を参照してください。 – aguertin
ああ、申し訳ありません。それは今あります –
関数にパラメータとして変数を渡すか、APIクラス内で静的にします。正しい構文を使用することを忘れないでください。 'class_name :: $ var_name'と似ているはずです。 – Lemjur