【问题标题】:can't find why function is undefined, php error找不到函数未定义的原因,php错误
【发布时间】:2015-11-06 18:59:00
【问题描述】:

我正在尝试从这里使用 php url 缩短器: https://github.com/delight-im/ShortURL

我刚刚复制了这段代码并尝试了一个数字,但是我有一个 php 错误“调用未定义的函数 encode()”。 我找不到问题。

你能帮帮我吗

这是我的代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Document sans titre</title>
</head>

<body>

<?php

/**
 * ShortURL: Bijective conversion between natural numbers (IDs) and short strings
 *
 * ShortURL::encode() takes an ID and turns it into a short string
 * ShortURL::decode() takes a short string and turns it into an ID
 *
 * Features:
 * + large alphabet (51 chars) and thus very short resulting strings
 * + proof against offensive words (removed 'a', 'e', 'i', 'o' and 'u')
 * + unambiguous (removed 'I', 'l', '1', 'O' and '0')
 *
 * Example output:
 * 123456789 <=> pgK8p
 *
 * Source: https://github.com/delight-im/ShortURL (Apache License 2.0)
 */
class ShortURL {
    const ALPHABET = '23456789bcdfghjkmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ-_';
    const BASE = 51; // strlen(self::ALPHABET)

    public static function encode($num) {
        $str = '';
        while ($num > 0) {
            $str = substr(self::ALPHABET, ($num % self::BASE), 1) . $str;
            $num = floor($num / self::BASE);
        }
        return $str;
    }

   public static function decode($str) {
        $num = 0;
        $len = strlen($str);
        for ($i = 0; $i < $len; $i++) {
            $num = $num * self::BASE + strpos(self::ALPHABET, $str[$i]);
        }
        return $num;
    }

}
ShortURL.encode(5356);


?>
</body>
</html>

【问题讨论】:

  • 你看到那个班上的 cmets 了吗?你知道你是怎么做的吗?

标签: php


【解决方案1】:

像这样使用它:

ShortURL::encode(5356);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-24
    • 2015-01-04
    • 2017-03-18
    • 2018-04-07
    • 1970-01-01
    • 1970-01-01
    • 2020-09-24
    • 1970-01-01
    相关资源
    最近更新 更多